ASP.NET AJAX的JSON序列化和反序列化

开发 后端
本文介绍ASP.NET AJAX的JSON序列化和反序列化,JSON 是一个正在崭露头角的行业标准序列化格式。它还是被 ASP.NET AJAX 使用的本机格式。

JSON序列化和反序列化

POST /Ajax/ZipCodeService.asmx/GetCityAndState HTTP/1.1  
Accept: */*  
Accept-Language: en-us  
Referer: http://localhost:1997/Ajax/ZipCodePage.aspx  
UA-CPU: x86  
Accept-Encoding: gzip, deflate  
User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; ...)  
Host: localhost:1997  
Content-Length: 15  
Connection: Keep-Alive  
Cache-Control: no-cache  
{"zip":"98052"}  
HTTP/1.1 200 OK  
Server: ASP.NET Development Server/8.0.0.0  
Date: Fri, 29 Dec 2006 21:06:17 GMT  
X-AspNet-Version: 2.0.50727  
Cache-Control: private, max-age=0 
Content-Type: application/json; charset=utf-8  
Content-Length: 16  
Connection: Close  
 
{"REDMOND", "WA"} 
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
  • 16.
  • 17.
  • 18.
  • 19.
  • 20.
  • 21.
  • 22.


JSON 是一个正在崭露头角的行业标准序列化格式。它还是被 ASP.NET AJAX 使用的本机格式。Microsoft AJAX Library 的 Sys.Serialization.JavaScriptSerializer 类支持在客户端进行 JSON序列化和反序列化。System.Web.Script.Serialization.JavaScriptSerializer 类支持在服务器上进行 JSON序列化和反序列化。

并非所有类型均与 JSON 兼容。例如,JSON 不能处理具有循环引用的对象。当您需要返回不能与 JSON 兼容的复杂数据类型时,其实您可以使用 ASP.NET AJAX 的 ScriptMethod 属性将返回类型序列化为 XML。这个技术对返回 XML 数据的方法也很有用,如下所示:

[ScriptMethod (ResponseFormatResponseFormat=ResponseFormat.Xml)]  
public XmlDocument GetData()  
{  
  ...  

  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

此外,您还可以构建和注册自定义 JSON 转换器,它允许将通常不能与 JSON 兼容的类型序列化和反序列化。ASP.NET AJAX January Futures CTP 包含三个这样的转换器:一个针对 DataSet,一个针对 DataTable,还有一个针对 DataRow。

【编辑推荐】

  1. 浅析ASP.NET Web 安全性
  2. ASP.NET的Session State
  3. 浅析IsPostBack属性ASP.NET
  4. ASP.NET构架与安全机制
  5. 概述ASP.NET水晶报表
责任编辑:佚名 来源: 百度空间
相关推荐

2011-06-01 15:05:02

序列化反序列化

2022-08-06 08:41:18

序列化反序列化Hessian

2009-08-24 17:14:08

C#序列化

2021-11-18 07:39:41

Json 序列化Vue

2011-05-18 15:20:13

XML

2009-09-09 16:10:11

.NET序列化和反序列

2009-09-09 14:45:41

XML序列化和反序列化

2009-09-09 15:47:27

XML序列化和反序列化

2009-08-06 11:16:25

C#序列化和反序列化

2009-06-14 22:01:27

Java对象序列化反序列化

2018-03-19 10:20:23

Java序列化反序列化

2019-11-20 10:07:23

web安全PHP序列化反序列化

2009-08-25 14:24:36

C#序列化和反序列化

2023-12-13 13:49:52

Python序列化模块

2009-08-25 14:43:26

C#序列化和反序列化

2024-10-07 08:26:53

2010-03-19 15:54:21

Java Socket

2024-01-30 13:32:51

JSON反序列化序列化

2011-06-01 14:50:48

2012-04-13 10:45:59

XML
点赞
收藏

51CTO技术栈公众号