Newtonsoft.Json 序列化日期问题解决
上代码
其中的使用方法和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": "lx99959@qq.com",
"Real_Name": "lx99959@qq.com",
"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 = "",
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);
原文地址:http://www.cnblogs.com/lxsweat/p/4372508.html
Newtonsoft.Json 序列化日期问题解决的更多相关文章
- Newtonsoft.Json序列化日期时间去T的几种方式。
原文地址:MVC web api 返回JSON的几种方式,Newtonsoft.Json序列化日期时间去T的几种方式. http://www.cnblogs.com/wuball/p/4231343. ...
- MVC web api 返回JSON的几种方式,Newtonsoft.Json序列化日期时间去T的几种方式。
原文链接:https://www.muhanxue.com/essays/2015/01/8623699.html MVC web api 返回JSON的几种方式 1.在WebApiConfig的Re ...
- MVC日期格式化,后台使用Newtonsoft.Json序列化日期,前端使用”f”格式化日期
MVC控制器中,经常使用Newtonsoft.Json把对象序列化成json字符串传递到前端视图.当对象中有DateTime类型的属性时,前后台如何处理才能把DateTime类型转换成想要的格式呢? ...
- [C#][Newtonsoft.Json] Newtonsoft.Json 序列化时的一些其它用法
Newtonsoft.Json 序列化时的一些其它用法 在进行序列化时我们一般会选择使用匿名类型 new { },或者添加一个新类(包含想输出的所有字段).但不可避免的会出现以下情形:如属性值隐藏(敏 ...
- Newtonsoft.Json 序列化和反序列化 以及时间格式 2 高级使用
手机端应用讲究速度快,体验好.刚好手头上的一个项目服务端接口有性能问题,需要进行优化.在接口多次修改中,实体添加了很多字段用于中间计算或者存储,然后最终用Newtonsoft.Json进行序列化返回数 ...
- C# 使用Newtonsoft.Json序列化自定义类型
Json.Net是一个读写Json效率比较高的.Net框架.Json.Net 使得在.Net环境下使用Json更加简单.通过Linq To JSON可以快速的读写Json,通过JsonSerializ ...
- c# 使用 Newtonsoft.Json 序列化json字符串以及,反序列化对象
1. 序列化 对象 /** 使用 Newtonsoft.Json 序列化对象 **/ [WebMethod] public String getPersonInfos() { // 初始化数据 Lis ...
- Newtonsoft.Json 序列化踩坑之 IEnumerable
Newtonsoft.Json 序列化踩坑之 IEnumerable Intro Newtonsoft.Json 是 .NET 下最受欢迎 JSON 操作库,使用起来也是非常方便,有时候也可能会不小心 ...
- Newtonsoft.Json 序列化和反序列化 时间格式
From : http://www.cnblogs.com/litian/p/3870975.html 1.JSON序列化 string JsonStr= JsonConvert.SerializeO ...
随机推荐
- spring IOC bean中注入集合
建立一个实体 package com.java.test4; import java.util.*; /** * @author nidegui * @create 2019-06-22 14:45 ...
- 安装 jdk 和 IDE软件
1.jdk的安装 通过官方网站获取JDK http://www.oracle.com 针对不同操作系统,下载不同的JDK版本 识别计算机的操作系统 下载完后进行安装,傻瓜式安装,下一步下一步即可.用j ...
- vC web管理无法访问解决办法
localhost:~ # service-control --status vsphere-clientINFO:root:Service: vsphere-client, Action: stat ...
- 本地读取服务器Xml文件及本地读本地的xml
updateUrl="ServerUrl"(服务器路径) WebClient wc = new WebClient(); Stream stream = wc.OpenRead(u ...
- 洛谷——P2574 XOR的艺术
P2574 XOR的艺术 很久之前就想挑战一下这道题了,线段树下传标记的入门题,跟区间加法下传标记类似. #include<bits/stdc++.h> #define N 1000005 ...
- 联想小新Air 15 安装黑苹果macOS High Sierra 10.13.6过程
联想小新Air 15 安装黑苹果全过程 本文参考:https://blog.csdn.net/qq_28735663/article/details/80634300 本人是联想小新AIr 15 , ...
- svn 使用TortoiseSVN server搭建本地SVN服务器
使用TortoiseSVN server搭建本地SVN服务器
- 敏捷开发系列学习总结(2)——Bug修改流程
原则,力求各司其职,简单明了. 1. 测试人员提交bug ⑴ 标题: [ 模块名称 ] 问题描述 ⑵ 内容: 问题重现步骤的描述,最好贴上图片. 因为一图胜万言. ⑶ 指定责任人: 根据bug指定责任 ...
- ansible使用jinja2管理配置文件以及jinja2语法简介
一.Jinja2介绍 Jinja2是基于python的模板引擎,功能比较类似于PHP的smarty,J2ee的Freemarker和velocity.它能完全支持unicode,并具有集成的沙箱执行环 ...
- 2.1.6、SparkEnv中创建ShuffleManager
ShuffleManager负责管理本地以及远程的block数据的shuffle操作. ShffuleManager的创建是在SparkEnv中. // Let the user specify sh ...