dojo从asp.net中获取json数据

简介:

搞来有搞去终于有了个结果,主要是一开始犯了一些低级错误。

对于json不太了解的童鞋,可以看看这个:http://www.dreamdu.com/blog/2008/10/19/json_in_javascript/

这个例子中主要是从数据库中读取数据,转换成JSON格式,传递给前端,废话少说上代码:


protected void Page_Load(object sender, EventArgs e)
        {
             string b = Request["callback"];


            string name = Context.Request["name"];
            //数据库操作
            SqlConnection thisConnection = new SqlConnection("Data Source=localhost;Initial Catalog=commodities; uid=sa;Password=123");
            string command = "select * from InterestStore where UserID = " + name;
            SqlDataAdapter thisAdapter = new SqlDataAdapter(command, thisConnection);
            SqlCommandBuilder thisCommandBuilder = new SqlCommandBuilder(thisAdapter);
            DataSet thisDataSet = new DataSet();
            thisAdapter.Fill(thisDataSet, "IStore");
            //将数据表转换成JSON数据
            string ss = GetJson(thisDataSet, "IStore");
           //返回到前端
            Response.Write(ss);
            Response.End();//Response.End把前面的内容都输出了,阻止了后面html相关内容的输出
        }
AI 代码解读

下面是将数据转化成JSON代码(改了好长时间,哈哈)


/// <summary>
        /// 获取Json数据
        /// </summary>
        /// <param name="dSet">数据集</param>
        /// <param name="strTableName">表名</param>
        /// <returns></returns>
        private string GetJson(DataSet dSet, string strTableName)
        {
            StringBuilder sBuilder = new StringBuilder();

            sBuilder.Append("{");
            //sBuilder.Append(" " + strTableName + ":{");
            sBuilder.Append("\"" + strTableName +"\":[");

            try {
                for (int i = 0; i < dSet.Tables[strTableName].Rows.Count; i++)
                {
                    sBuilder.Append("{");
                    for (int j = 0; j < dSet.Tables[strTableName].Columns.Count; j++)
                    {
                        sBuilder.AppendFormat("\"{0}\":\"{1}\",", dSet.Tables[strTableName].Columns[j].ColumnName, dSet.Tables[strTableName].Rows[i][j].ToString());
                    }
                    sBuilder.Remove(sBuilder.ToString().LastIndexOf(','), 1);
                    sBuilder.Append("},");
                }
                sBuilder.Remove(sBuilder.ToString().LastIndexOf(','), 1);

                sBuilder.Append("]");
                sBuilder.Append("}");
                //sBuilder.Append(" };");
                return sBuilder.ToString();
            }
            catch (Exception es){
                throw new Exception(es.Message);
            }
        }
AI 代码解读

前台返回的数据:

{"IStore":[{"SOIID":"1 ","UserID":"001 ","StoreID":"47 ","Attention":"10"},{"SOIID":"2 ","UserID":"001 ","StoreID":"77 ","Attention":"8"},{"SOIID":"3 ","UserID":"001 ","StoreID":"81 ","Attention":"8"},{"SOIID":"4 ","UserID":"001 ","StoreID":"42 ","Attention":"7"},{"SOIID":"5 ","UserID":"001 ","StoreID":"81 ","Attention":"6"},{"SOIID":"6 ","UserID":"001 ","StoreID":"114 ","Attention":"6"},{"SOIID":"7 ","UserID":"001 ","StoreID":"106 ","Attention":"8"},{"SOIID":"8 ","UserID":"001 ","StoreID":"116 ","Attention":"6"}]}

前台执行ajax调用的代码


xhr.get({
                        //请求页面
                        url: "WebForm3.aspx",
                        //参数
                        content: { name: sname },
                        //数据格式
                        handleAs: "json",
                        //当执行成功时调用的方法
                        load: function (newContent) {
                            try {
                                
                                var str = newContent;
                                console.log(str);
                                console.log("ddddddddddddddddddd");
                                console.log(dojo.toJson(str));
                            }
                            catch (err)
                            { console.log(err); }
                            //dom.byId("txtSuggestion").value = people.programmers[0].lastName;
                            dom.byId("txtSuggestion").value = newContent.IStore[2].StoreID;
                        },
                        //失败时调用的方法
                        error: function (err) {
                            //alert("error");
                            alert(err);
                        }
                    });
AI 代码解读

目录
打赏
0
相关文章
JSON数据解析实战:从嵌套结构到结构化表格
在信息爆炸的时代,从杂乱数据中提取精准知识图谱是数据侦探的挑战。本文以Google Scholar为例,解析嵌套JSON数据,提取文献信息并转换为结构化表格,通过Graphviz制作技术关系图谱,揭示文献间的隐秘联系。代码涵盖代理IP、请求头设置、JSON解析及可视化,提供完整实战案例。
JSON数据解析实战:从嵌套结构到结构化表格
python语言采集淘宝商品详情数据,json数据示例返回
通过淘宝开放平台的API接口,开发者可以轻松获取商品详情数据,并利用这些数据进行商品分析、价格监控、库存管理等操作。本文提供的示例代码和JSON数据解析方法,可以帮助您快速上手淘宝商品数据的采集与处理。
处理从API返回的JSON数据时返回Unicode编码字符串怎么处理
在处理API返回的JSON数据时,遇到类似`\u7f51\u7edc\u8fde\u63a5\u9519\u8bef`的Unicode编码字符串,可使用JavaScript内置方法转换为可读文字。主要方法包括:1. 使用`JSON.parse`自动解析;2. 使用`decodeURIComponent`和`escape`组合解码;3. 在API调用中直接处理响应数据。这些方法能有效处理多语言内容,确保正确显示非ASCII字符。
淘宝商品评论数据API接口详解及JSON示例返回
淘宝商品评论数据API接口是淘宝开放平台提供的一项服务,旨在帮助开发者通过编程方式获取淘宝商品的评论数据。这些数据包括评论内容、评论时间、评论者信息、评分等,对于电商分析、用户行为研究、竞品分析等领域都具有极高的价值。
如何在Python中高效实现CSV到JSON的数据转换
在实际项目中,数据格式转换是常见问题,尤其从CSV到JSON的转换。本文深入探讨了多种转换方法,涵盖Python基础实现、数据预处理、错误处理、性能优化及调试验证技巧。通过分块处理、并行处理等手段提升大文件转换效率,并介绍如何封装为命令行工具或Web API,实现自动化批量处理。关键点包括基础实现、数据清洗、异常捕获、性能优化和单元测试,确保转换流程稳定高效。
145 83
|
2月前
|
解析电商商品详情API接口系列,json数据示例参考
电商商品详情API接口是电商平台的重要组成部分,提供了商品的详细信息,支持用户进行商品浏览和购买决策。通过合理的API设计和优化,可以提升系统性能和用户体验。希望本文的解析和示例能够为开发者提供参考,帮助构建高效、可靠的电商系统。
62 12
关于商品详情 API 接口 JSON 格式返回数据解析的示例
本文介绍商品详情API接口返回的JSON数据解析。最外层为`product`对象,包含商品基本信息(如id、name、price)、分类信息(category)、图片(images)、属性(attributes)、用户评价(reviews)、库存(stock)和卖家信息(seller)。每个字段详细描述了商品的不同方面,帮助开发者准确提取和展示数据。具体结构和字段含义需结合实际业务需求和API文档理解。
拍立淘按图搜索API接口返回数据的JSON格式示例
拍立淘按图搜索API接口允许用户通过上传图片来搜索相似的商品,该接口返回的通常是一个JSON格式的响应,其中包含了与上传图片相似的商品信息。以下是一个基于淘宝平台的拍立淘按图搜索API接口返回数据的JSON格式示例,同时提供对其关键字段的解释
Python中序列化/反序列化JSON格式的数据
【11月更文挑战第4天】本文介绍了 Python 中使用 `json` 模块进行序列化和反序列化的操作。序列化是指将 Python 对象(如字典、列表)转换为 JSON 字符串,主要使用 `json.dumps` 方法。示例包括基本的字典和列表序列化,以及自定义类的序列化。反序列化则是将 JSON 字符串转换回 Python 对象,使用 `json.loads` 方法。文中还提供了具体的代码示例,展示了如何处理不同类型的 Python 对象。
PHP如何高效地处理JSON数据:从编码到解码
在现代Web开发中,JSON已成为数据交换的标准格式。本文探讨了PHP如何高效处理JSON数据,包括编码和解码的过程。通过简化数据结构、使用优化选项、缓存机制及合理设置解码参数等方法,可以显著提升JSON处理的性能,确保系统快速稳定运行。

热门文章

最新文章