C#连接到Rest Service以检索信息

时间:2019-01-23 09:17:37

标签: c# api

我对c#还是比较陌生,并且正在使用API​​。我在VS中创建了一个简单的Windows表单,并尝试连接Rest服务以根据搜索条件(例如ID号)检索信息,并将所有内容显示在数据网格中。我一直在寻找成功的例子,但很少能成功。这个想法是使用户能够在文本框中输入ID号并单击“搜索”按钮,然后该按钮将连接到其余服务并检索与该特定ID号有关的所有信息,并将其全部显示在数据网格中与列名。这可能吗?谁能建议我如何建立与其余服务的连接?

1 个答案:

答案 0 :(得分:1)

尝试一下。路径1是您的连接: 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;
    }