我有一个只有一个操作的控制器。在这个操作方法中,我调用了一个async
方法,然后就这样了。这是我正在使用的代码:
我有一个只有一个操作的控制器。在这个操作方法中,我调用了一个async
方法,然后就这样了。这是我正在使用的代码:
[HttpGet]
public Task<MyObject> Get()
{
return _task.GetMyObject()
}
这个对象序列化为我所期望的JSON格式。但是我的经理坚持要将签名更改为以下内容:
[HttpGet]
public async Task<IActionResult> Get()
{
var data = await _task.GetMyObject();
return Ok(data);
}
我认为在控制器中没有理由使用 await
,可以直接返回 Task
,因为后面没有任何依赖于结果。除了为 await
创建状态机等额外的代码生成之外,从 WebApi
的角度来看,这种方法有什么影响吗?为了澄清,我想知道返回一个 IActionResult
是否比只返回 Task<MyObject>
更好,即使它们看起来得到的结果相同。
await
关键字并不意味着它与另一个带有await
关键字的问题重复。 - Akash Kava