我試圖從網站RSS獲取數據將其轉換爲JSON。我得到這個JSON字符串:Array JSON反序列化
http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&q=http%3A%2F%2Frss.tecmundo.com.br%2Ffeed
我用列表來獲取值,但我得到這個錯誤「無法創建抽象類或接口的實例」,我不知道如何解決它。它發生在這一行。
IList<News> content = new IList<News>();
這是我的代碼。
public class News
{
public string author { get; set; }
public string title { get; set; }
public string content { get; set; }
public string contentSnippet { get; set; }
public string link { get; set; }
public string publishedDate { get; set; }
public string[] getFeed(string Website)
{
string path = @"http://ajax.googleapis.com/ajax/services/feed/load?v=1.0&q=" + Website;
var json = new WebClient().DownloadString(path);
JObject jsonObject = JObject.Parse((string)json);
IList<JToken> jsonData = jsonObject["responseData"]["feed"]["entries"]["0"].Children().ToList();
IList<News> content = new IList<News>();
foreach(JToken data in jsonData)
{
News finalData1 = JsonConvert.DeserializeObject<News>(jsonData.ToString());
content.Add(finalData1);
}
return new string[] { "I must return something here." };
}
}
這裏是我使用更好的可視化JSON字符串的工具:http://jsonschema.net/#/
我正在閱讀我的JSON數組的正確方法嗎?我的意思是使用[「responseData」] [「feed」] [「entries」] [「0」],因爲現在它正在返回我試圖從無效位置讀取數據。 –
@ThadeuFernandes:我認爲'entries'好,但'entries'是一個數組 - 我懷疑你只是想擺脫'[「0」]'和可能的'Children()'調用。將編輯。 –
@ThadeuFernandes:我編輯了一些適用於我的代碼... –