C# ASP.NET 5中的异步结果
为了调用AuthorizeAsync,我在ASP.NET 5项目中将我的控制器编写为async。有一种方法不需要调用AuthorizeAsync,但为了一致性,我将其作为异步方法编写,如下所示:C# ASP.NET 5中的异步结果,c#,asp.net,asp.net-mvc,asynchronous,C#,Asp.net,Asp.net Mvc,Asynchronous,为了调用AuthorizeAsync,我在ASP.NET 5项目中将我的控制器编写为async。有一种方法不需要调用AuthorizeAsync,但为了一致性,我将其作为异步方法编写,如下所示: public Task<IActionResult> ApplicationsWithSmes(bool toPdf = false) => Task.Run(() => (IActionResult)View(DataService.GetList<Ap
public Task<IActionResult> ApplicationsWithSmes(bool toPdf = false)
=> Task.Run(() => (IActionResult)View(DataService.GetList<ApplicationWithSmesDto>()));
带有MES的公共任务应用程序(bool-toPdf=false)
=>Task.Run(()=>(IActionResult)视图(DataService.GetList());
现在,在非异步方法中,我可以只返回View(),而不将其强制转换为IActionResult。我写上述方法的方式是否有问题?如果没有,为什么我必须进行强制转换?“只是为了一致性”并不是浪费两个线程的好理由——原始请求线程和
任务使用的线程。运行。您不需要使用任务。删除任务后运行。在方法中使用异步来解决强制转换错误(公共异步任务…),请参阅:@Zaki,谢谢你的链接。这解释了很多。现在我必须回去重新思考我的一些设计。