json学习笔记(3)
{
DataContractJsonSerializer zer = new DataContractJsonSerializer(typeof(T));
MemoryStream ms = new MemoryStream();
zer.WriteObject(ms, t);
string jsonstring = Encoding.UTF8.GetString(ms.ToArray());
ms.Close();
return jsonstring;
}
/// <summary>
/// json反序列化
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="strjson"></param>
/// <returns></returns>
public static T JsonDeserializa<T>(string strjson)
{
DataContractJsonSerializer zer = new DataContractJsonSerializer(typeof(T));
MemoryStream ms = new MemoryStream(Encoding.UTF8.GetBytes(strjson));
T obj = (T)zer.ReadObject(ms);
return obj;
}
}
person类:
View Code
public class Person
{
public string Name { get; set; }
public int Age { get; set; }
}
简单实现:
View Code
protected void Page_Load(object sender, EventArgs e)
{
Person p = new Person();
p.Name = "Ace";
p.Age = 22;
string json = JsonHelper.JsonSerializa<Person>(p);
Response.Write(json);
}
json序列化处理日期类型的处理
JSON格式不直接支持日期和时间。DateTime值值显示为“/Date(700000+0500)/”形式的JSON字符串,其中第一个数字(在提供的示例中为 700000)是 GMT 时区中自 1970 年 1 月 1 日午夜以来按正常时间(非夏令时)经过的毫秒数。该数字可以是负数,以表示之前的时间。示例中包括“+0500”的部分可选,它指示该时间属于Local类型,即它在反序列化时应转换为本地时区。如果没有该部分,则会将时间反序列化为Utc。
相关新闻>>
- 发表评论
-
- 最新评论 进入详细评论页>>
今日头条
更多>>您可能感兴趣的文章
- Spring.Net学习系列一: 统一异常处理
- Request.Cookies 和 Response.Cookies 的区别
- ASP.NET之Gridview图解(1)
- 向Excel文档中嵌入VBA控件和UserForm并显示
- ASP.NET FormsAuthentication跨站点登录时绝对地址返
- ASP.NET生成高质量缩略图通用函数(c#代码)
- 用OpenXml在文档的尾部添加一个Rich Text Content Con
- ASP.net页面中请求远程Web站点
- 使用ASP.NET MVC3+EF+Jquery制作文字直播系统(一
- 步步为营 SharePoint 开发学习笔记系列&nb



