在我的ASP.NET MVC 3项目中,我正在调用一个用于登录身份验证的Web服务。但它引发了一个例外:
异常详细信息:
此时无法启动异步操作。异步操作只能在异步处理程序或模块中启动,或者在页面生命周期中的某些事件中启动。如果在执行页面时发生此异常,请确保将页面标记为<%@ Page Async =“true”%&gt ;.
如何解决此问题?
答案 0 :(得分:8)
确保您的Controller方法返回异步任务。
public class ServiceController : Controller
{
public async Task<ActionResult> Index()
{
var service = new Service();
await service.CallMethodAsync();
return View();
}
}
基本上,文档是以他们认为您只使用ASP.NET WebForms的方式编写的,但显然您也可以在MVC应用程序中使用它,因此需要更新其文档。
答案 1 :(得分:0)
您正在调用ASYNC方法,因此必须在页面声明<%@ Page .....%>内添加Async =“ true”。