C# JSON 序列化
using System.Web.Script.Serialization;
定义类
public class User
{
public int Id { get; set; }
public string Name { get; set; }
public string Remark { get; set; }
}
序列化与反序列化
int id = 1;
string name = "test";
//json工具类
JavaScriptSerializer ser = new JavaScriptSerializer();
//序列化 对象转json字符串
var obj =new User
{
Id=id,
Name=name
};
Debug.WriteLine(ser.Serialize(obj));
//反序列化 json字符串转对象
//注意变量name前后也要加引号!这里容易出错
string dataJson = "{\"Id\":" + id + ",\"Name\":\"" + name + "\"}";
Debug.WriteLine(dataJson);
//dataJson = ser.Serialize(obj);
User user =(User)ser.Deserialize(dataJson, typeof(User));
Debug.WriteLine("Id=" + user.Id);
Debug.WriteLine("Name=" + user.Name);
注意如果我用匿名类代替new User,只要保证字段一样也可以进行序列化和反序列化
//匿名类代替User,也可以序列化后,在解析成User类
var obj =new
{
Id=id,
Name=name
};