Json.Net 轉換 IEnumerable 介面

Json.Net對於IEnumerable介面的處理,同樣是序列化成陣列的格式
首先先宣告個物件以便之後的處理

private class Person
{
public int id { get; set; }
public string name { get; set; }
public DateTime date { get; set; }
}

轉換IEnumerable介面,以List為例
static void Main(string[] args)
{
// 淮備資料
List<Person> list1 = new List<Person>()
{
new Person()
{
id = 1,
name = “p1”,
date = DateTime.Today.AddDays(-1)

},
new Person()
{
id = 2,
name=”p2”,
date = DateTime.Today
},
new Person()
{
id = 3,
name = “p3”,
date = DateTime.Today.AddDays(1)
}
};

// 序列化
string jsonString = JsonConvert.SerializeObject(list1);
Console.WriteLine(jsonString);

// 反序列化
List<Person> list2 = JsonConvert.DeserializeObject<List<Person>>(jsonString);
foreach (var item in list2)
{
Console.WriteLine(“id:{0}, name:{1}, date:{2}”, item.id, item.name, item.date);
}

Console.ReadLine();
}

執行結果