Asp.net mvc 4 Async在ASP.NET MVC 4应用程序上不起作用

Asp.net mvc 4 Async在ASP.NET MVC 4应用程序上不起作用,asp.net-mvc-4,async-await,c#-5.0,Asp.net Mvc 4,Async Await,C# 5.0,编辑:它在新的ASP.NETMVC4项目上运行良好 我有现有的大型ASP.NETMVC4应用程序,并试图在项目上实现异步编程。我已经创建了一个名为AsyncTestController的新控制器,并从以下代码开始检查async是否在应用程序上工作 public async Task<ActionResult> Index() { await Task.Delay(TimeSpan.FromSeconds(30)); return View(new BaseM

编辑:它在新的ASP.NETMVC4项目上运行良好

我有现有的大型ASP.NETMVC4应用程序,并试图在项目上实现异步编程。我已经创建了一个名为AsyncTestController的新控制器,并从以下代码开始检查async是否在应用程序上工作

public async Task<ActionResult> Index()
{
      await Task.Delay(TimeSpan.FromSeconds(30));

      return View(new BaseModel());
}
公共异步任务索引()
{
等待任务延迟(时间跨度从秒(30));
返回视图(新的BaseModel());
}

BaseModel
在布局页面上使用,所以我必须传递它的实例。我开始调试代码我的问题是当
Task.Delay()
调用其他控制器时挂起。代码的问题是什么?似乎此异步等待无法正常工作。如何修复它?

这看起来不像是会死锁的事情。您添加的
async
函数是否使用了
Task.Wait()
Task.Result
?@Ned否这是第一个也是唯一的函数,而且当我创建全新的项目并运行相同的代码时,它正在工作。您的目标是.NET 4.5吗,您的web.config中的
httpRuntime.targetFramework
的值是多少?@StephenCleary它是web.config中的4.5try serverRuntime uploadReadAheadSize=“0”