Asp.net mvc MVC异步子操作在IIS中不起作用

Asp.net mvc MVC异步子操作在IIS中不起作用,asp.net-mvc,async-await,Asp.net Mvc,Async Await,我有一个新的MVC5网站,其中包含一个对儿童行为的调用。此子操作使用“async”关键字,因为它执行一些DB工作 这在本地工作使用IIS Express没有问题,但是如果在运行IIS 7.5的windows server 2008 R2上运行此操作,则会出现以下错误: Error executing child request for handler 'System.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerAsyncWrapper'. 我

我有一个新的MVC5网站,其中包含一个对儿童行为的调用。此子操作使用“async”关键字,因为它执行一些DB工作

这在本地工作使用IIS Express没有问题,但是如果在运行IIS 7.5的windows server 2008 R2上运行此操作,则会出现以下错误:

Error executing child request for handler 'System.Web.Mvc.HttpHandlerUtil+ServerExecuteHttpHandlerAsyncWrapper'.

我已经读到MVC不完全支持异步,但是如果这是问题所在,为什么在IIS Express中可以这样做呢?花了一段时间才意识到这是“异步”操作的问题,因为所有其他视图在这两种环境中都可以正常工作。

子操作当前无法异步运行。这将在MVC6中发生变化,但当然,儿童行为的整个概念也会发生变化,因为这是值得的


同时,在子操作中执行的任何操作都必须同步执行。

那么,当通过visual studio在IIS express中本地运行时,为什么会执行此操作呢?好问题。老实说,我甚至不知道你是怎么做到的。子操作与async完全不兼容。实际上有很多关于这个问题的未解决的bug报告和特性请求。