zl程序教程

您现在的位置是:首页 >  后端

当前栏目

[asp.net]C#实现json的序列化和反序列化

c#NetASPJSONJSON 实现 序列化
2023-09-27 14:29:23 时间

在做asp.net和unity进行http通信的时候,当unity客户端发出表单请求的时候,我要将他要请求的数据以json的格式返回给客户端,让客户端来解析。服务器端这一块就涉及到json的序列化和反序列化的问题。

接下来就来举个列子,当然包括两种方法(本篇参考自:http://www.csharpwin.com/csharpspace/10822r2908.shtml)

两种方法都有例子,第一种是用泛型集合来存储的对象,然后将集合序列化一下;第二种是直接序列化的一个对象

using System;

using System.Collections.Generic;

using System.Web.Script.Serialization;

using System.Configuration;

using System.Runtime.Serialization.Json;

using System.Runtime.Serialization;

using System.IO;

using System.Text;


//方法一:引入System.Web.Script.Serialization命名空间使用 JavaScriptSerializer类实现简单的序列化 [Serializable] public class Person private int id; /// summary /// id /// /summary public int Id get { return id; } set { id = value; } private string name; /// summary /// 姓名 /// /summary public string Name get { return name; } set { name = value; } //方法二:引入 System.Runtime.Serialization.Json命名空间使用 DataContractJsonSerializer类实现序列化 //可以使用IgnoreDataMember:指定该成员不是数据协定的一部分且没有进行序列化,DataMember:定义序列化属性参数,使用DataMember属性标记字段必须使用DataContract标记类 否则DataMember标记不起作用。 [DataContract] public class Person1 [IgnoreDataMember] public int Id { get; set; } [DataMember(Name = "name")] public string Name { get; set; } [DataMember(Name = "sex")] public string Sex { get; set; } public partial class _Default : System.Web.UI.Page string constr = ConfigurationManager.ConnectionStrings["connstr"].ConnectionString; protected void Page_Load(object sender, EventArgs e) Person p1 = new Person(); p1.Id = 1; p1.Name = "dxw"; Person p2 = new Person(); p2.Id = 2; p2.Name = "wn"; List Person listperson = new List Person listperson.Add(p1); listperson.Add(p2); JavaScriptSerializer js = new JavaScriptSerializer(); //json序列化 string s = js.Serialize(listperson); Response.Write(s);
p11.Sex = "男"; DataContractJsonSerializer json = new DataContractJsonSerializer(p11.GetType()); string szJson = ""; //序列化 using (MemoryStream stream = new MemoryStream()) json.WriteObject(stream, p11); szJson = Encoding.UTF8.GetString(stream.ToArray()); Response.Write(szJson); //反序列化 //using (MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(szJson))) // DataContractJsonSerializer serializer = new DataContractJsonSerializer(typeof(People)); // Person1 _people = (Person1)serializer.ReadObject(ms);
ASP输出JSON数据及客户端jQuery处理方法 首先ASP处理JSON需要json官方提供的JSON For ASP 封装类文件,下载地址:http://code.google.com/p/aspjson/downloads/list 下载最新的JSON_2.0.4.asp文件备用。
ASP.NET中XML转JSON的方法 原文:ASP.NET中XML转JSON的方法 许多应用程序都将数据存储为XML的格式,而且会将数据以JSON的格式发送到客户端以做进一步处理。要实现这一点,它们必须将XML格式转换为JSON格式。 XML转JSON代码
//数据库中有 typeid 和 typename 字段 var json;$(document).ready(function () { //ready-start$.
蓬莱仙羽 麦子学院讲师,游戏蛮牛专栏作家,CSDN博客专家,热爱游戏开发,热爱Coding!