【发布时间】:2019-06-17 14:15:56
【问题描述】:
虽然我确实了解Task、ActionResult 等的概念。但如果没有指定其他内容,我仍然不确定在控制器中输入哪个最直观。
考虑到与返回的类型一样明确,我应该这样:
[HttpGet] public ActionResult<Thing> Get()
{
return Ok(Context.Things);
}
但是,我应该使用通用类型的 API 范例:
[HttpGet] public IActionResult Get()
{
return Ok(Context.Things);
}
最后,尊重 API 哲学的异步特性,我应该应用以下内容:
[HttpGet] public Task<IActionResult> Get()
{
return Ok(Context.Things);
}
在一般的、未开发的场景中,我无法决定哪一个最合适。前两个似乎有效。直觉上,我更喜欢使用第三个,但由于它不起作用(转换无效),我担心也许我在吠叫错误的二叉树。
完全不知道如何用谷歌搜索它,我正在获取各种示例。不确定如何判断哪些是相关的,我更喜欢问。
【问题讨论】:
-
这里是来自MSDN的这些选项的一个很好的解释。
-
@RacilHilan 很好的链接。当我用谷歌搜索时,我错过了。请重新发布您的评论作为答案,添加一些解释,只是一点点。我很乐意接受。
标签: c# .net asp.net-web-api