首页 > 解决方案 > 如何从外部获取数据到我的 web api 中?

问题描述

我需要从https://reqres.in/api/users/获取数据到我的 Web API。我能解决什么问题?

public class users
{   
    public users(int ID, string url)
    {
        id = ID;
    }

    public int id { get; set; }

    public string email { get; set; }

    public string first_name { get; set; }

    public string last_name { get; set; }

    public string avatar { get; set; }
}

标签: c#asp.net

解决方案


我认为这样的事情应该有效。使用 Newtonsoft 和 RestSharp

using RestSharp;
using Newtonsoft.Json;


var client = new RestClient("https://reqres.in/api/users/");
var request = new RestRequest(Method.GET);

var aqq = client.Execute(request).Content;
dynamic json = JsonConvert.DeserializeObject(aqq);

Users users = new();

foreach (var user in json["data"])
{
   users.id = user["id"];
   users.email = user["email"];
   users.first_name = user["first_name"];
   users.last_name = user["last_name"];
   users.avatar = user["avatar"];
}

编辑:就像彼得在评论部分指出的那样,它将覆盖用户并且只包含最后一个条目。我认为更好的解决方案是使用 List<Users>,例如:

List<Users> users = new();

foreach (var user in json["data"])
{
   users.Add(new Users(id = user["id"], email = user["email"], first_name = user["first_name"], last_name = user["last_name"], avatar = user["avatar"]));
}

推荐阅读