C# 如何访问任务的T对象<;T>;

C# 如何访问任务的T对象<;T>;,c#,.net,asynchronous,C#,.net,Asynchronous,我正在使用Task.Wait()方法同步使用异步方法,但在调用完成后,我希望访问任务模板化的对象 taskmessage=_httpClient.GetAsync(Globals.ENDPOINT_URI+URI.EscapeDataString(query)); message.Wait(); 如何访问message对象的HttpResponseMessage 谢谢您可能想使用异步/等待,因为使用等待和结果被认为是不好的做法。您的代码将更新为以下内容: HttpResponseMessage

我正在使用Task.Wait()方法同步使用异步方法,但在调用完成后,我希望访问任务模板化的对象

taskmessage=_httpClient.GetAsync(Globals.ENDPOINT_URI+URI.EscapeDataString(query));
message.Wait();
如何访问message对象的HttpResponseMessage


谢谢

您可能想使用
异步/等待
,因为使用
等待
结果
被认为是不好的做法。您的代码将更新为以下内容:

HttpResponseMessage message =
    await _httpClient.GetAsync(Globals.ENDPOINT_URI + Uri.EscapeDataString(query));
wait
将同时等待调用完成并提供结果,该结果将位于
消息
变量中

互联网上有很多很好的资源,关于C#5中引入的
async/await
,这里有关于堆栈溢出的很好的答案。这里有一页可以让您开始学习:


编辑:这里有一个关于
结果
问题的好资源:

您需要使用
异步/等待
,因为使用
等待
结果
被认为是不好的做法。您的代码将更新为以下内容:

HttpResponseMessage message =
    await _httpClient.GetAsync(Globals.ENDPOINT_URI + Uri.EscapeDataString(query));
wait
将同时等待调用完成并提供结果,该结果将位于
消息
变量中

互联网上有很多很好的资源,关于C#5中引入的
async/await
,这里有关于堆栈溢出的很好的答案。这里有一页可以让您开始学习:


编辑:这里有一个关于
Result
问题的好资源:

消息。Result
您还可以使用
var消息
消息的可能副本。Result
您还可以使用
var消息
或的可能副本