Newtonsoft.Json 是.net 开源的一个json格式处理类库
官方网站:http://json.codeplex.com/
在使用的项目引用Newtonsoft.Json库。平常使用的方法有序列化与反序列方法
1 序列化:把一个对象序列化成json格式的字符串
V_BBSTopic_User entity = db.GetTEntity<V_BBSTopic_User>(sql);
if (entity != null)
{
string json = JsonConvert.SerializeObject(entity); //序列化
context.Response.Write(json);
}
Newtonsoft.Json 自定义时间格式
如果不设置时间格式,它默认转为json 的时间格式是这样的:2014-08-29T12:23:234
默认格式明显不是我们想要的,所以必须使用IsoDateTimeConverter类设置时间格式
IsoDateTimeConverter timeConverter=new IsoDateTimeConverter();
timeConverter.DateTimeFormat="yyyy-MM-dd HH";
string strJson = JsonConvert.SerializeObject(entity , Formatting.Indented, timeConverter);
2 反序列化:主要是把josn格式的字符串转化成一个实体对象。例如
public class A
{
public string ID { get; set; }
public DateTime CreateDate { get; set; }
}
//反序列化
string json="{'ID':'1','CreateDate ':'2014-08-20'}";
A a = JsonConvert.DeserializeObject< A>(json);
3 Newtonsoft.Json 其它方法
//json 不能是数组
string jsonText2 = "{'a':'aaa','b':'bbb','c':'ccc'}";
JObject jobj = JObject.Parse(jsonText2);
Console.WriteLine("a:"+jobj["a"]);
Console.Read();