我正在Windows 2008 R2计算机上的IIS 7.5上部署ASP.NET MVC 4应用程序。
该应用程序可在Visual Studio Web开发服务器中本地正常工作。
但部署后,我会收到504
http状态代码。
该应用在ApplicationPoolIdentity
身份和Integrated
模式下的自定义应用程序池中运行。应用程序池可以运行32位和64位应用程序,并且目标是.NET框架的v4。
应用程序集是针对“任何CPU”构建的。
当我部署应用程序并尝试访问它时,除了接收504
Http状态代码之外,我还在事件查看器中看到了这一点。
Event Data
HRESULT 0x8007000d
PhysicalPath \\?\C:\Windows\Microsoft.NET\Framework\v4.0.30319\CONFIG\web.config
Type 3
Message Unrecognized element 'providerOption'
LineNumber 53
PreviousLine <compiler language="c#;cs;csharp" extension=".cs" warningLevel="4" type="Microsoft.CSharp.CSharpCodeProvider, System, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089">
ErrorLine <providerOption name="CompilerVersion" value="v4.0"/>
NextLine <providerOption name="WarnAsError" value="false"/>
答案 0 :(得分:1)
上面的配置属于CodeDOM,它是System.dll程序集中System.CodeDom命名空间中的一组类,ASP.NET用它来生成我们的“代码隐藏”类。
CodeDOM配置已从.NET框架的v2更改为v3.5。
我错过了上述错误给我带来web.config路径的部分,它正在抱怨。路径为C:\Windows\Microsoft.NET\Framework\v4.0.30319\CONFIG\web.config
,该文件确实包含此<providerOption>
元素。
我评论说出来了。此错误现已消失。
但是,我还有其他问题要处理,但这个问题就消失了。因此,未来遇到此错误的任何其他人都可以使用此答案作为帮助。