从 ASP.NET Core MVC 中的 API 获取数据

Fetching data from an API in ASP.NET Core MVC

我在从 ASP.NET 核心 MVC 控制器 (imdb api) 中的 API 获取数据时遇到问题。

问题是我无法将当前 JSON 对象反序列化为类型 这是我的代码

List<Movie> movieList = new List<Movie>();

using (var httpClient = new HttpClient())
{
    using (var response = await httpClient.GetAsync("https://imdb-api.com/en/API/Title/****/tt0110413"))
    {
        string apiResponse = await response.Content.ReadAsStringAsync();
                
        var Movie = JsonConvert.DeserializeObject<Movie>(apiResponse);
        //movieList = JsonConvert.DeserializeObject<List<Movie>>(apiResponse);
    }
}

return View();

我的 api 数据是这样的

{
    "items": [
        {
            "id": "tt0111161",
            "rank": "1",
        },...
    ]
}

我遇到反序列化问题 - 有什么帮助吗?

您需要确保 Movie 的结构与您的 json 数据相对应:

public class Movie {
        public List<Item> items { get; set; }
    }
    public class Item {
        public string id { get; set; }
        public string rank { get; set; }

    }

使用 IMDbApiLib。

GitHub: https://github.com/IMDb-API/IMDbApiLib

努格特: https://nuget.org/packages/IMDbApiLib

电影的标题数据: https://github.com/IMDb-API/IMDbApiLib/blob/master/IMDbApiLib/Models/TitleData.cs