ASP.NET 里的 JSON操作

最近项目中需要用到 JSON操作,google了一下 找到了几个比较好的操作方法....

一 .使用 mircosoft 提供的 .NET Framework 自带的 json操作方法

1. 使用JavaScriptSerializer,位于命名空间System.Web.Script.Serialization,使用如下:

序列化为JSON字符串:

C#代码

User user = new User {Name = "jquery", Age = 20};
JavaScriptSerializer serializer = new JavaScriptSerializer();
string result = serializer.Serialize(user);

反序列化JSON

C#代码

String input = "";
JavaScriptSerializer serializer = new JavaScriptSerializer();
serializer.Deserialize(input);

2. 使用DataContractJsonSerializer类,

推荐使用这个,这是最新的,位于命名空间System.Runtime.Serialization.Json下,序列化和反序列化分别调用它的WriteObject()和ReadObject()方法就可以了。

二:使用第三方的 JSON.NET  (http://json.codeplex.com/)

Version: Json.NET 3.5 Release 7
Date: Fri Apr 16 2010 at 3:00 PM

在项目中添加Newtonsoft.Json.dll引用..

using Newtonsoft.Json;
using Newtonsoft.Json.Converters;

//把Json字符串反序列化为对象

目标对象 = JsonConvert.DeserializeObject(JSON字符串, typeof(目标对象));

//把目标对象序列化为Json字符串

string Json字符串 = JsonConvert.SerializeObject(目标对象);

string jsonText = "";

//json 读取
jsonText = "[‘JSON!‘,1,true,{property:‘value‘}]";
JsonReader reader = new JsonTextReader(new StringReader(jsonText));
Console.WriteLine("TokenType\t\tValueType\t\tValue");
while (reader.Read())
{
    Console.WriteLine(reader.TokenType + "\t\t" + reader.ValueType + "\t\t" + reader.Value);
    Console.WriteLine("\n\r");
}

//JSON写入
StringWriter sw = new StringWriter();
JsonWriter writer = new JsonTextWriter(sw);
writer.WriteStartArray();
writer.WriteValue("JSON!");
writer.WriteValue(1);
writer.WriteValue(true);
writer.WriteStartObject();
writer.WritePropertyName("property");
writer.WriteValue("value");
writer.WriteEndObject();
writer.WriteEndArray();
writer.Flush();
jsonText = sw.GetStringBuilder().ToString();
Console.WriteLine(jsonText);

一些相关的json操作的链接和资料

json官方: http://www.json.org/json-zh.html

另外一种开源的json类库 : Jayrock.Json  (http://www.cnblogs.com/chjw8016/archive/2010/04/20/1716198.html?login=1#commentform)

时间: 2024-10-14 17:42:10

ASP.NET 里的 JSON操作的相关文章

ASP.NET2.0 Newtonsoft.Json 操作类分享

JSON 是现在比较流行的数据交互格式,NET3.0+有自带类处理JSON,2.0的话需要借助Newtonsoft.Json来完成,不然自己写的话,很麻烦. 网上搜索下载 Newtonsoft.Json.Net20.dll (没有加群找群主拿),添加引用到项目当中. /*添加引用*/ using Newtonsoft.Json; using Newtonsoft.Json.Linq; using Newtonsoft.Json.Converters; /* 序列化,返回JSON格式的字符串 */

asp.net中利用JSON进行增删改查中运用到的方法

//asp.net中 利用JSON进行操作, //增加: //当点击"增加链接的时候",弹出增加信息窗口,然后,在窗体中输入完整信息,点击提交按钮. //这里我们需要考虑这些:我会进行异步提交,使用jquery中的方法,$.post("网页名",JSON,callback); //JSON的写法:{"name":name,"id":id},那我们对其进行假设,比方说,表单中的textbox很多,需要我们填写的信息 //也很多,

10.ASP.NET Core launchSettings.json file

这篇文章,我将带领大家学习ASP.NET Core中的launchSettings.json文件.为了学习它,我们打开之前建的空白模板的ASP.NET Core项目. 从上面的图片中你可以看到,我们项目的属性中有一个launchSettings.json文件.那么我们来一起学习这个重要的文件吧. launchSettings.json文件 当我们使用Visual Studio或者.NET Core CLI运行项目的时候,就会使用到LaunchSettings.json文件中的这些设置. 你需要特

使用Json.Net解决MVC中各种json操作

最近收集了几篇文章,用于替换MVC中各种json操作,微软mvc当然用自家的序列化,速度慢不说,还容易出问题,自定义性也太差,比如得特意解决循环引用的问题,比如datetime的序列化格式,比如性能.NewtonSoft.json也就是Json.Net性能虽然不是最好的,但是是比较靠前的,其功能是最强大的,包含各种json操作模式.现在来看看mvc中的替换1, Controller.Json方法这个方法最容易出现循环引用,比如EF查出一个一对多集合想序列化,结果a引用了子表b,b中还引用了a,导

asp.net后台的一些操作

1.在后台绑定下拉框再返回到前台 protected StringBuilder sq = new StringBuilder();//为了在前台绑定 protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) { MakeTypeSelect(); } } //定义办法 private void MakeTypeSelect() { var typeList = typeBll.GetModelList("&q

如何让Asp.net webAPI返回JSON格式数据

ASP.NET Web API 是新一代的 HTTP 網路服務開發框架,除了可以透過 Visual Studio 2012 快速開發外 (內建於 ASP.NET MVC 4 的 Web API 專案範本內),也非常適合用於各種跨平台的行動裝置上,如果你想開發 RESTful 應用程式,那麼使用 ASP.NET Web API 應該是挺理想的解決方案.不過 ASP.NET Web API 內建支援 JSON 與 XML 兩種輸出格式,並依據瀏覽器端送出的 Accept 標頭自動決定回應的內容格式,

公共的Json操作类

using System; using System.Data; using System.Text; using System.Collections.Generic; using System.Reflection; using System.Data.Common; using System.Collections; using System.Web.UI.WebControls; using System.Web.UI.HtmlControls; using System.IO; usi

PHP JSON 操作总结

原文:PHP JSON 操作总结 由于JSON可以在很多种程序语言中使用,所以我们可以用来做小型数据中转,如:PHP输出JSON字符串供JavaScript使用等.在PHP中可以使用 json_decode() 由一串规范的字符串解析出 JSON对象,使用 json_encode() 由JSON 对象生成一串规范的字符串. 例:<?php $json = '{"a":1, "b":2, "c":3, "d":4, &qu

ASP.NET Hashtable输出JSON格式数据 - 贵源网络 - 博客园

ASP.NET Hashtable输出JSON格式数据 - 贵源网络 - 博客园 ASP.NET Hashtable输出JSON格式数据 ASP.NET Hashtable输出JSON格式数据 - 贵源网络 - 博客园