文档章节

原 ASP.NET如何使用JSON

波利beryl
 波利beryl
发布于 2014/11/10 10:15
字数 658
阅读 17
收藏 0

发表于2年前(2012-06-26 11:28)   阅读(2597) | 评论(2 4人收藏此文章, 我要收藏

0

ASP.NET JSON Newtonsoft.Json.dll


关于json,有一个官网:http://www.json.org 上面介绍了每种语言生成json格式的类库,我们只要把他们下载解压之后调用他们其中的组件即可,在.net中我用的是Newtonsoft.Json.dll这个组件,这个组件有好几种版本,有1.0,3.5等等。关于他的用法可以到官网去具体了解一下,这样我这里主要是介绍我们如何用他们,首先要在后台处理页面生成并返回json数据格式,数据处理页面这里可以用aspx或者ashx页面,如果用aspx页面来处理的话,首页把aspx的源视图中除了第一行之外,其余行都要删除,因为如果不删除的话,那么他们都将被返回给前台调用者必定造成错误.下面我介绍如何用ashx页面来生成json并返回。下面建一个Handler.ashx页面,下面是它里面的代码在引用Newtonsoft.Json.dll,要先将Newtonsoft.Json.dll放在Bin文件中,然后再页面添加对他的引用using Newtonsoft.Json;

  IList<RoomCate> list = RoomCateManager.GetAllRoomCateInfo();
  string Content = JavaScriptConvert.SerializeObject(list);//将数据转成json格式
  Response.Write(Content ); //输出json

 从上面可以看出返回的是一个数组,里面包含许多的json对象,格式是[{"id":"1"},{"id":"2"}]

RoomCate rc=RoomCateManager.GetRoomCateInfo(id);
string Content = JavaScriptConvert.SerializeObject(rc);//将数据转成json格式
Response.Write(Content ); //输出json

上面输入的json格式为{"id":"1"}

那么我们前台如何调用并解析它呢,这里我们要用jquery里面的ajax方法,当然用的前提是用引用jquery.js文件。这里我推荐用getJSON方法因为他直接就返回json的数据格式

 $.getJSON("Handler/Handler.ashx", function (json) {
                $.each(json, function (index, array) { //解析json数组用的方法
                    var roomID= array['RoomID'];//RoomID用类的属性
                    $("#NewsTop").append(roomID);//把它加载到我们要显示他们的html标签中
                });
  });

 

如果返回是json对象格式为{"id":"1"}那么我们将如何解析它呢,使用方法一样只是解析方法不一样

 $.getJSON("Handler.ashx", function (json) {//直接用json.属性即可
              $("#logo").append("<img src='../SystemFiles/" + json.PictureName + "' width='234' height='172' />");
              $("#intro").html(json.Contents.substr(0, 420) + "...");
});

 

如果要交给aspx页面处理的话,不仅用将源代码中只保留第一行,其余行删除之外,还有加随机数

$.getJSON("Handler.aspx", {sjd: Date().toLocaleString() }, function (json) {

 .....................//解析方法同上,其中data参数为sjd: Date().toLocaleString() ,这句就是随机数确保每次解析都不一样
 });

本文转载自:

波利beryl
粉丝 21
博文 30
码字总数 5582
作品 0
成都
私信 提问
采用Opserver来监控你的ASP.NET项目系列(二、监控SQL Server与Asp.Net项目)

原文:采用Opserver来监控你的ASP.NET项目系列(二、监控SQL Server与Asp.Net项目) 前言 之前有过2篇关于如何监控ASP.NET core项目的文章,有兴趣的也可以看看. 今天我们主要来介绍一下,如何使用...

杰克.陈
2017/12/29
0
0
Asp.net Web API实战

工作中需要暴露一些功能,或者说API供其他系统调用,其他系统可能是Winform,WPF,Asp.net或者是Mobile客户端。当然可以用Web Service或是WCF来实现,但是自己偏向于尝试新的东西,于是,就打算...

随智阔
2012/08/17
248
0
ASP.NET WebApi技术从入门到实战

一、课程介绍 曾经有一位不知名的讲师说过这么一句名言: 一门RPC技术不会,那么千万万门RPC技术将都不会!在今天移动互联网的时代,作为攻城师的我们,谁不想着只写一套API就可以让我们的Web...

跟着阿笨一起玩NET
2018/09/05
0
0
ASP.NET WebApi技术从入门到实战演练

一、课程介绍 曾经有一位不知名的讲师说过这么一句名言: 一门RPC技术不会,那么千万万门RPC技术将都不会!在今天移动互联网的时代,作为攻城师的我们,谁不想着只写一套API就可以让我们的Web...

阿笨net
2018/04/23
0
0
在asp.net2.0中使用Jquery调用Web Service[附源代码]

代码:/Files/zhuqil/JSONDemo.zip 介绍: 我们都知道,默认情况下,一个asp.net Web Service 返回的数据格式是XML的,处理XML数据总是会花费一些开销,最近,另外一种JSON的格式非常流行并且...

王二狗子11
2018/01/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

网站安全维护公司对渗透测试php后门分析

很多想做渗透测试的朋友都想了解关于PHP后门漏洞的安全测试重点方法,以及该如何预防被中php后门,本节由我们的Sine安全高级渗透工程师进行全面的讲解,来让大家更好的理解和了解php代码的安全...

网站安全
10分钟前
3
0
在github上创建代码仓库时忘记添加.gitignore文件或修改了.gitignore该怎么办?

#清除本地缓存(改变成未track状态) #git rm -r --cached . 表示清除项目中所有文件的本地缓存 git rm -r --cached xxx #xxx表示不想版本控制的文件,比如小编可以输入test.o #.gitignore中的...

博爱飞扬
10分钟前
4
0
Fsimage 与 EditLog定义及合并过程

有很多客户端在向 hdfs 中写数据,同时有很多客户端在查数据,这就涉及到一个响应速度问题。因为只有一个 namenode ,客户端在写的时候,必须迅速记下来。 1. 向 namenode 询问可以存储到哪些...

Garphy
14分钟前
4
0
TI KeyStone C66x开发板处理器、NAND FLASH、NOR FLASH

TL6678F-EasyEVM是广州创龙基于SOM-TL6678F核心板而研发的一款多核高性能DSP+FPGA开发板。开发板采用核心板+底板方式,底板采用沉金无铅工艺的8层板设计,尺寸为247.33mm*139.8mm,它为用户提...

Tronlong创龙
32分钟前
5
0
【2019年8月版本】OCP 071认证考试最新版本的考试原题-第13题

Choose the best answer. Examine this query: SELECT TRUNC (ROUND(156.00,-2),-1) FROM DUAL; What is the result? A) 16 B) 160 C) 150 D) 200 E) 100 Answer:D (解析:关键就是 round ......

oschina_5359
42分钟前
5
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部