虚拟路径' /'映射到另一个应用程序,不允许

时间:2015-10-30 19:10:44

标签: c# asp.net asp.net-mvc iis-7 postal

我在Asp.NET MVC中开发了一个应用程序,我使用Framework Postal MVC,用于将视图作为电子邮件发送。

它工作正常,没有问题,但今天,开始向我展示以下信息:

  

虚拟路径' /'映射到另一个应用程序,这是不允许的。

只有当我尝试使用 SendAsync (异步方法发送电子邮件)时才会发生这种情况,但是,它之前没有问题。此外,如果我使用发送(同步方法发送电子邮件),它可以工作。

我没有对属性,代码等进行任何更改

我记得最重要的事情就是发布应用程序,但是,在代码或配置中,我没有再做任何更改。

看起来在执行异步时会丢失HttpContext。

- 当我在Web.config中添加以下参数时,Async方法又开始工作了:

<add key="aspnet:UseTaskFriendlySynchronizationContext" value="true" />

1 个答案:

答案 0 :(得分:0)

同样它也适合我,突然间我开始在异步AJAX方法上得到错误。所以显然我正在复制整个文件夹,这是错误的...但它已经工作了几个星期,因为在此之前,它已正确部署(使用Publish方法)。但不知怎的,它开始意识到我没有发布(我想我在很短的时间内改变了很多次)并开始显示错误。

修复方法是使用Publish方法正确部署。 之后,它没有上面针对aspnet:UseTaskFriendlySynchronizationContext提到的web.config修复(在<appsettings>下面)。