首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >从JSON c#返回列表

从JSON c#返回列表
EN

Stack Overflow用户
提问于 2018-05-19 12:00:37
回答 2查看 1.2K关注 0票数 1

我需要一个来自JSON的列表,但我不知道如何从上面的列表中获得这些信息

代码语言:javascript
复制
   ///www.omdbapi.com/
    const string ApiKey = "18693fd6";

    /// <summary>
    /// By Search
    /// www.omdbapi.com/?s=titulo&apikey=18693fd6
    /// </summary>
    /// <param name="filtro"></param>
    /// <returns></returns>
    public List<Film> ListarFilmes(string filtro)
    {

        List<Film> ResultFilm = new List<Film>();

        using (WebClient webClient = new System.Net.WebClient())
        {
            var json = webClient.DownloadString("http://www.omdbapi.com/?s=" + filtro + "&apikey=" + ApiKey);
            dynamic array = JsonConvert.DeserializeObject(json);
            ResultFilm.Add(array) ;
        }

        return ResultFilm;
    }

这是一个文件类,我需要在列表中返回标题和年份变量。

代码语言:javascript
复制
    public class Film
    {
    /// <summary>
    /// Title
    /// </summary>
    public string Title { get; set; }
    /// <summary>
    /// Year
    /// </summary>
    public int? Year { get; set; }
    }
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2018-05-19 12:21:45

那个杰森回来的不只是一堆电影。结构如下:

代码语言:javascript
复制
{
  "Search": [
    {
      "Title": "Sin t\u00c3\u00adtulo (Carta para Serra)",
      "Year": "2011",
      "imdbID": "tt2268553",
      "Type": "movie",
      "Poster": "N\/A"
    },
    {
      "Title": "Pendiente de T\u00c3\u00adtulo",
      "Year": "2008",
      "imdbID": "tt2301959",
      "Type": "series",
      "Poster": "N\/A"
    },
    .....more items here...... 
  ],
  "totalResults": "17",
  "Response": "True"
}

您需要访问属性Search才能获得电影列表。此代码将为您提供包括标题和年份在内的电影对象列表。

代码语言:javascript
复制
JToken search = JObject.Parse(json).GetValue("Search");
ResultFilm = search.Select(f => f.ToObject<Film>()).ToList();

请注意,Json包含10部电影,而不是totalResults中提到的17部。

票数 0
EN

Stack Overflow用户

发布于 2018-05-19 12:25:19

你试过吗?我假设返回的对象只是电影列表

代码语言:javascript
复制
ResultFilm = JsonConvert.DeserializeObject<List<Film>>(json);
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50425077

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档