我想簡單地從URL中讀取一些JSON數據,然後將其轉換爲POCO類的集合,但我似乎無法弄清楚我做錯了什麼。反序列化POCO數組與JsonFX
這裏是JSON數據的樣本,因爲它是從URL抓取:
[
{
"Name":"Together As One Run",
"Location":"Parkville, MO",
"ScheduledAt":"\/Date(1334984400000)\/",
"URL":"http://www.runningintheusa.com/Race/View.aspx?RaceID=36667"
},
{
"Name":"Lean Green Running Machine 5K Run/Walk and 1 Mile Run",
"Location":"Springfield, MO",
"ScheduledAt":"\/Date(1335589200000)\/",
"URL":"http://www.runningintheusa.com/Race/View.aspx?RaceID=53945"
},
{
"Name":"Festival of Miles",
"Location":"St. Louis, MO",
"ScheduledAt":"\/Date(1338440400000)\/",
"URL":"http://www.runningintheusa.com/Race/View.aspx?RaceID=53901"
},
{
"Name":"Miles Against Melanoma",
"Location":"Saint Charles, MO",
"ScheduledAt":"\/Date(1338613200000)\/",
"URL":"http://www.runningintheusa.com/Race/View.aspx?RaceID=53939"
}
]
我可以與Web客戶端就好了這一數據。
我設置了我的JsonFX讀者是這樣的:
var json = new JsonReader(new DataReaderSettings(new PocoResolverStrategy()));
這裏是我的POCO類:
public class Race {
public String Name { get; set; }
public String Location { get; set; }
public DateTime ScheduledAt { get; set; }
public String URL { get; set; }
}
我曾嘗試在幾個方面反序列化JSON數據,並且似乎沒有任何工作:
//reader is an instance of StreamReader
var content = reader.ReadToEnd();
//nope
//var output = json.Read<Race>(content);
//nope
//var output = json.Read<Race[]>(content);
這已經是一個簡單的事情要做,我只是找不到解決方案。我花了大約30分鐘。使用谷歌搜索無濟於事。任何幫助,將不勝感激!
我結束了使用JavaScirptSerializer和它的工作就像一個魅力。我在這裏嘗試了其他幾個建議,但JsonFX沒有與其中任何一個工作。謝謝! – 2012-04-07 20:52:18