另一個 JSON Library 的選擇:Jil

SONY DSC

在 .Net 平台上,大多數的工程師都會選擇 Json.NET 來處理 JSON 資料,而我發現 Jil 這套在使用上更方便,官方也宣稱 Jil 的處理速度更快。

首先,來看看這個簡單的例子:

TestClass t1 = new TestClass { Field1 = “f1″, Field2 = “f2″ };
string t1Json = JSON.Serialize(t1);
TestClass t1 = new TestClass { Field1 = “f1″, Field2 = “f2″ };
string t1Json = JSON.Serialize(t1);
看起來跟 Json.NET 沒什麼不同,但我覺得方便的地方在於它支援 Dynamic 語法:

System.IO.StringWriter output = new System.IO.StringWriter();
JSON.SerializeDynamic(new
{
A = “String Value1″,
B = “String Value2″,
C = “String Value3″,
D = new { D1 = “String Value D1″, D2 = “String Value D2″ },
}, output);
Console.WriteLine(output.ToString());

var result = JSON.DeserializeDynamic(output.ToString());
string d1Result = result.D.D1;
Console.WriteLine(d1Result);
System.IO.StringWriter output = new System.IO.StringWriter();
JSON.SerializeDynamic(new
{
A = “String Value1″,
B = “String Value2″,
C = “String Value3″,
D = new { D1 = “String Value D1″, D2 = “String Value D2″ },
}, output);
Console.WriteLine(output.ToString());

var result = JSON.DeserializeDynamic(output.ToString());
string d1Result = result.D.D1;
Console.WriteLine(d1Result);
只要知道 JSON 資料的結構,之後利用 Dynamic 語法的特性,取資料的程式碼會簡潔很多,這也是我推薦的原因。

廣告

發表迴響

在下方填入你的資料或按右方圖示以社群網站登入:

WordPress.com Logo

您的留言將使用 WordPress.com 帳號。 登出 / 變更 )

Twitter picture

您的留言將使用 Twitter 帳號。 登出 / 變更 )

Facebook照片

您的留言將使用 Facebook 帳號。 登出 / 變更 )

Google+ photo

您的留言將使用 Google+ 帳號。 登出 / 變更 )

連結到 %s