首页 > 解决方案 > C# 连接到 Rest 服务以检索信息

问题描述

我对 c# 和使用 API 比较陌生。我在 VS 中创建了一个简单的 windows 窗体,我正在尝试连接 ta rest 服务以根据搜索条件(例如 ID 号)检索信息并在数据网格中显示所有内容。我一直在寻找我试图实现的目标但收效甚微的例子。这个想法是让用户在文本框中输入 ID 号并单击“搜索”按钮,然后该按钮将连接到其余服务并检索与该特定 ID 号相关的所有信息并将其全部显示在数据网格中与列名。这可能吗?谁能建议我如何建立与其余服务的连接?

标签: c#api

解决方案


尝试这个。Path1 是您的连接:Class ApiResult 只是一个具有 ArticleApiModel 列表的类。

 public static List<ArticleApiModel> GetArticles (int id)
    {

        try
        {
            var task = Task<List<ArticleApiModel>>.Run(async () =>
            {
                using (HttpClient client = new HttpClient())
                {

                    var response = await client.GetAsync(path1 + "/api/articles/",id);
                    if (response != null)
                    {
                        var jsonString = await response.Content.ReadAsStringAsync();
                        var result = JsonConvert.DeserializeObject<ApiResult>(jsonString);
                        return result.Result;
                    }
                }
                return null;
            });
            task.Wait();
            return task.Result;
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex);
        }
        return null;
    }

推荐阅读