我和一位同事通过从两台流氓服务器的临时 ASP.NET 文件中删除此文件来解决此问题。
MVC-AreaRegistrationTypeCache.xml
在这里找到:
C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Temporary ASP.NET Files\root\06304885\908d56a6\UserCache
在未映射区域也未找到 XML 的服务器上,如下所示:
<?xml version="1.0" encoding="UTF-8"?>
<!--This file is automatically generated. Please do not modify the contents of this file.-->
<typeCache mvcVersionId="3cff62e5-ef21-4e58-897f-d0f1eafd3beb" lastModified="10/09/2013 15:10:21"/>
删除此文件并重新启动应用程序池会导致重新创建它,然后区域工作。
该文件现在是:
<?xml version="1.0" encoding="utf-8"?>
<!--This file is automatically generated. Please do not modify the contents of this file.-->
<typeCache lastModified="04/10/2013 15:45:02" mvcVersionId="3cff62e5-ef21-4e58-897f-d0f1eafd3beb">
<assembly name="MyMVCSite, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null">
<module versionId="a3ce0d47-e370-4176-a07b-76aec3a3c25c">
<type>MyMVCSite.Areas.Admin.AdminAreaRegistration</type>
</module>
这感觉有点不对,因为我不确定为什么会发生这种情况。但是在我的头撞到砖墙上两天之后,它就可以了。
这篇文章似乎表明我发现的是 MVC 的一个错误。我不知道问题是否仅与 MVC 3 有关。
编辑
刚刚发现这个链接表明 MVC 4 可能存在问题