转载--文章(感谢米粒儿博主分享) 关于 Json.net序列化时间问题
http://www.cnblogs.com/lxsweat/p/4372508.html
上代码
其中的使用方法和UserInfo实体对象就不贴代码了。
/// <summary>
/// 把对象转成json字符串
/// </summary>
/// <param name="o">对象</param>
/// <returns>json字符串</returns>
public static string SerializeToJson(object data)
{
return JsonConvert.SerializeObject(data);
}
得到结果(红色字体)
var data = {
"dbstring": "test",
"modelUserInfo": {
"User_ID": 1002,
"User_Name": "[email protected]",
"Real_Name": "[email protected]",
"Password": "96e79218965eb72c92a549dd5a330112",
"Mobile": "13121893780",
"Email": "",
"IDCard": "",
"Source": 1,
"Lat": 34.2627525,
"Lng": 117.19381,
"Precision": 0,
"Weixin_OpenID": "",
"Role_Code": "[Master]",
"Status": 0,
"Login_Count": 19,
"LastLogin_Date": "/Date(1417165362307)/",
"LastLogin_IP": "127.0.0.1",
"Create_Date": "/Date(1417104000000)/",//时间会成这种格式
"Create_IP": "127.0.0.1"
}
}
方法优化
给SerializeObject方法加了重载参数
var timeConverter = new IsoDateTimeConverter { DateTimeFormat = DateTimeFormats };
public static string SerializeToJson(object data, string DateTimeFormats = "yyyy-MM-dd HH:mm:ss")
{
var timeConverter = new IsoDateTimeConverter { DateTimeFormat = DateTimeFormats };
return JsonConvert.SerializeObject(data, Formatting.Indented, timeConverter);
}
其他方法
/// <summary>
/// 把json字符串转成实体对象
/// </summary>
/// <typeparam name="T">对象</typeparam>
/// <param name="data">json字符串</param>
public static T DeserializeToModel<T>(string data)
{
return JsonConvert.DeserializeObject<T>(data);
}
/// <summary>
/// 将json字符串转换成list<T>
/// </summary>
/// <typeparam name="T"></typeparam>
/// <param name="data"></param>
/// <returns></returns>
public static List<T> DeserializeToList<T>(string data)
{
return JsonConvert.DeserializeObject<List<T>>(data);
}
注意:将json list字符串转换成list<T>的时候可能会出问题。Look下面的modelUser_InfoList是一个实体列表list,然而前面的code和msg属于自定义字段。
调用方法:DeserializeToList<T>(string data) 记得取出data里面的数组传入参数
return JsonUtils.SerializeToJson(new
{
code = "1",
msg = "success",
data = modelUser_InfoList
});
示例:
JObject obj = JObject.Parse(json_list);
string json = obj["data"].ToString();
List<User_Info> listGetResultInfo = JsonUtils.DeserializeToList<User_Info>(json);
郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。