【发布时间】:2014-09-08 01:37:21
【问题描述】:
有人知道这样做的目的是什么吗?
private async Task<bool> StoreAsync(TriviaAnswer answer) { ... }
[ResponseType(typeof(TriviaAnswer))]
public async Task<IHttpActionResult> Post(TriviaAnswer answer)
{
var isCorrect = await StoreAsync(answer);
return Ok<bool>(isCorrect);
}
通过检查,它告诉它异步运行私有方法,但同步等待它结束。我的问题是,这有什么意义吗?或者这只是一种花哨但徒劳的技术?我在研究 Web API / MVC / SPA 的一些代码时遇到了这个问题。
无论如何,任何见解都会很有用。
【问题讨论】:
-
1) 请显示
MyMethod()的返回类型,这很重要。 2)你提到的同步等待在哪里,你的示例代码没有。 -
我相信同步等待发生在
await。我会尽快更新代码。 -
await的定义是异步等待。同步等待将是var isCorrect = StoreAsync(answer).Result; -
这篇文章对
await有一些有趣的误解,希望在链接的副本中涵盖。如果没有 - 请提供更具体的细节,我很乐意投票重新开放。 -
@AlexeiLevenkov:你应该在关闭之前完成这项工作。
标签: c# asp.net-mvc asp.net-web-api single-page-application