小编srv*_*rv8的帖子

创建新任务的正确方法,并异步调用Web api c#

你好我已经创建了两个例子,但我不确定这些是否正确.我想创建一个新任务并异步调用web api c#.但是有两个例子.

第一个例子:

        private string APIResponse()
        {
            HttpClient client = new HttpClient();
            client.BaseAddress = new Uri("http://localhost:55517/");
            // Add an Accept header for JSON format.  
            client.DefaultRequestHeaders.Accept.Add(new 
               MediaTypeWithQualityHeaderValue("application/json"));

            HttpResponseMessage response = client.GetAsync("api/Values").Result;   
            if (response.IsSuccessStatusCode)
            {
                var products = response.Content.ReadAsStringAsync().Result;
                //Thread.Sleep(5000);
                return products.ToString();
            }
            else
            {
                return "ERROR";
            }
        }

        protected async void Apibtn_Click(object sender, EventArgs e)
        {
            Task<string> task = new Task<string>(APIResponse);
            task.Start();

            var ApiResp = await task;
            Do some work here... 
            // ...
            //..
            //.
        }
Run Code Online (Sandbox Code Playgroud)

第二个例子是:

    private async Task<string> …
Run Code Online (Sandbox Code Playgroud)

c# api asynchronous task async-await

2
推荐指数
1
解决办法
378
查看次数

标签 统计

api ×1

async-await ×1

asynchronous ×1

c# ×1

task ×1