3
我正在尋找最簡單/最好的方法來將JSON轉換爲dynamic
對象,最好沒有任何第三方依賴(出於各種原因)。目前,我有以下內容,但需要參考C:\Program Files (x86)\Microsoft ASP.NET\ASP.NET Web Pages\v1.0\Assemblies
的System.Web.Helpers
,這感覺有點討厭。沒有第三方庫的情況下從JSoN獲取動態對象的最佳方式是什麼?
var webClient = new WebClient();
var jsonSerializer = new JavaScriptSerializer();
var url = string.Format(GetBoardUrl, TrelloDevKey, TrelloTestAuthToken);
var result = webClient.DownloadString(url);
var json = jsonSerializer.Deserialize<dynamic>(result);
dynamic board = new DynamicJsonObject(json);
Console.WriteLine(board.id);
沒有System.Web.Helpers
參考,我只能得到儘可能的json
變量,它的工作原理,但我必須從字典(如board["id"]
)訪問性能。我可以忍受這一點,但我還沒有準備好相信我不能用框架方法做到這一點! :D
我不知道這是否與你的'System.Web.Helpers'解決方案相同,但它對我很好:http://www.drowningintechnicaldebt.com/ShawnWeisfeld/archive/2010 /08/22/using-c-4.0-and-dynamic-to-parse-json.aspx – 2012-01-31 20:33:15
據我所知,唯一的「System。*」JSON序列化程序是System.Web.Helpers中的一個。 DLL。但是如果你只是不想使用第三方庫,你總是可以編寫自己的解析器? JSON的語法[非常簡單](http://www.json.org/)。 – 2012-01-31 20:33:22
發現這個,可以通過NuGet安裝的單個.cs文件 - 似乎工作得很好:http://nuget.org/packages/DynamicJson – 2012-01-31 20:41:57