我試圖從API中獲取的JSON字符串(迄今爲止用字符串變量測試)創建電影列表。我的電影級別:JSON to object using C#JavaScriptSerializer
private string title { get; set; }
private int year { get; set; }
private string releaseDate { get; set; }
public override String ToString()
{
return title + " (" + year + "): " + releaseDate;
}
但是,下面的代碼不會在電影對象中插入任何內容。前一段時間,它創建了2個對象(這是正確的,因爲它是JSON字符串中的2個電影),但沒有任何內容。現在我一無所有,代碼不會創建任何對象。
string json = "{\"movies\": [{\"title\": \"Something\",\"year\": \"1999\",\"releaseDate\": \"1234\"},{\"title\": \"Something2\",\"year\": \"1992\",\"releaseDate\": \"1235\"}]}";
List<Movie> movieList = new JavaScriptSerializer().Deserialize<List<Movie>>(json);
很明顯,我很新的這一點,但我似乎無法找到一個解決我的問題在別處「的原因要麼是不一樣的問題,因爲我有或者我找不到我的代碼和解決方案之間的差異。
我在這裏錯過了什麼? Movie-class中的變量名稱是否必須與JSON字符串中的相同?
編輯:我終於找到了我的第二個問題here。當你使用自動屬性時,寫出私人信息是錯誤的。另見{ get; set; } syntax。
你試過這樣嗎?字符串json =「[{\」title \「:\」Something \「,\」year \「:\」1999 \「,\」releaseDate \「:\」1234 \「},{\」title \「: 「Something2」,「year」:「1992」,「releaseDate」:\「1235 \」}]「; – 2015-01-21 00:16:43
不完全如此,但我只用{}嘗試過一部電影。 – Phil 2015-01-21 00:21:24
你爲什麼不能使用Newtonsoft使用JSON.NET的任何原因? – 2015-01-21 10:02:08