2016-06-12 24 views
0

我一直在使用一个服务,返回一个数组里面的数组和JSON文件。 第二层数组的问题是我似乎无法使用它。 的JSON看起来是这样的:JSON与System.Web.Helpers中的多个图层

{ 
    "section": "U.S.", 
    "subsection": "Politics", 
    "title": "To Understand Clinton’s Moment, Consider That It Came 32 Years After Ferraro’s", 
    "abstract": "A look back to when Geraldine A. Ferraro was on the Democratic ticket in 1984 can tell a lot about how the country has changed, and how it has not.", 
    "url": "urlLocation", 
    "byline": "By ALISON MITCHELL", 
    "item_type": "Article", 
    "updated_date": "2016-06-11T13:17:01-04:00", 
    "created_date": "2016-06-11T13:17:05-04:00", 
    "published_date": "2016-06-12T00:00:00-04:00", 
    "material_type_facet": "", 
    "kicker": "", 
    "des_facet": [ 
    "Presidential Election of 2016", 
    "Women and Girls" 
    ], 
    "org_facet": [], 
    "per_facet": [ 
    "Clinton, Hillary Rodham", 
    "Ferraro, Geraldine A" 
    ], 
    "geo_facet": [], 
    "multimedia": [ 
    { 
     "url": "urlLocation", 
     "format": "Standard Thumbnail", 
     "height": 75, 
     "width": 75, 
     "type": "image", 
     "subtype": "photo", 
     "caption": "Geraldine A. Ferraro at a hearing of the Democratic national convention’s platform committee in 1984, the year she became the first woman selected to be a major party’s vice presidential nominee.", 
     "copyright": "George Tames/The New York Times" 
    }, 
    { 
     "url": "urlLocation", 
     "format": "thumbLarge", 
     "height": 150, 
     "width": 150, 
     "type": "image", 
     "subtype": "photo", 
     "caption": "Geraldine A. Ferraro at a hearing of the Democratic national convention’s platform committee in 1984, the year she became the first woman selected to be a major party’s vice presidential nominee.", 
     "copyright": "George Tames/The New York Times" 
    }, 
    { 
     "url": "urlLocation", 
     "format": "Normal", 
     "height": 127, 
     "width": 190, 
     "type": "image", 
     "subtype": "photo", 
     "caption": "Geraldine A. Ferraro at a hearing of the Democratic national convention’s platform committee in 1984, the year she became the first woman selected to be a major party’s vice presidential nominee.", 
     "copyright": "George Tames/The New York Times" 
    }, 
    { 
     "url": "urlLocation", 
     "format": "mediumThreeByTwo210", 
     "height": 140, 
     "width": 210, 
     "type": "image", 
     "subtype": "photo", 
     "caption": "Geraldine A. Ferraro at a hearing of the Democratic national convention’s platform committee in 1984, the year she became the first woman selected to be a major party’s vice presidential nominee.", 
     "copyright": "George Tames/The New York Times" 
    }, 
    { 
     "url": "urlLocation", 
     "format": "superJumbo", 
     "height": 1364, 
     "width": 2048, 
     "type": "image", 
     "subtype": "photo", 
     "caption": "Geraldine A. Ferraro at a hearing of the Democratic national convention’s platform committee in 1984, the year she became the first woman selected to be a major party’s vice presidential nominee.", 
     "copyright": "George Tames/The New York Times" 
    } 
    ], 
    "short_url": "urlLocation" 
} 

我试图访问它是这样的:

NewsArticle newsArticle = new NewsArticle(); 
      newsArticle.category = data.results[counter].section; 
      newsArticle.title = data.results[counter].title; 
      newsArticle.fullText = data.results[counter][email protected]; 
      DynamicJsonArray multimedia = data.results[counter].multimedia; 
      newsArticle.image = multimedia[0].url; 
      return_value.Add(newsArticle); 

我得到一个“索引数组的范围之外。” “多媒体”阵列上的例外。我的语法有什么问题吗?

+0

使用调试器,您可能没有正确反序列化它。 –

+0

什么是代码中的'counter'?请提供您用于反序列化JSON的代码。 – rpeshkov

+0

我正在使用Sytem.Web.Helper库。在JSON文件的根目录中给出了这个文件中有多少条目,我将它们存储在计数器变量中。 – Deadwalker

回答

0

服务的返回值似乎存在问题。第一个结果不包含该数组,这就是为什么我得到索引超出界限的例外。 谢谢奥廖尔Eraki!