3 回答

TA貢獻(xiàn)1886條經(jīng)驗(yàn) 獲得超2個(gè)贊
為了清楚起見(jiàn),除了@SLaks的答案,這意味著您需要更改此行:
List<RootObject> datalist = JsonConvert.DeserializeObject<List<RootObject>>(jsonstring);
像這樣:
RootObject datalist = JsonConvert.DeserializeObject<RootObject>(jsonstring);

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超13個(gè)贊
由于錯(cuò)誤消息正盡力告訴您,您無(wú)法將單個(gè)對(duì)象反序列化為集合(List<>
)。
您想反序列化為單個(gè)RootObject
。

TA貢獻(xiàn)1772條經(jīng)驗(yàn) 獲得超8個(gè)贊
這也發(fā)生在我身上,因?yàn)槲以噲D獲取一個(gè),IEnumerable但是響應(yīng)只有一個(gè)值。請(qǐng)嘗試確保它是您的回復(fù)中的數(shù)據(jù)列表。我用于(用于api url get)解決問(wèn)題的行如下所示:
HttpResponseMessage response = await client.GetAsync("api/yourUrl");
if (response.IsSuccessStatusCode)
{
IEnumerable<RootObject> rootObjects =
awaitresponse.Content.ReadAsAsync<IEnumerable<RootObject>>();
foreach (var rootObject in rootObjects)
{
Console.WriteLine(
"{0}\t${1}\t{2}",
rootObject.Data1, rootObject.Data2, rootObject.Data3);
}
Console.ReadLine();
}
希望能幫助到你。
- 3 回答
- 0 關(guān)注
- 1618 瀏覽
添加回答
舉報(bào)