出现此错误:
'compilerVersion'的值 必须提供者选项中的属性 如果你是'v4.0'或更晚 编译4.0或更高版本的 .NET Framework。编译这个 适用于3.5或3.5版的Web应用程序 早期的.NET Framework,删除 'targetFramework'属性来自 的元素 Web.config文件。
它正在开发我们的开发系统,现在我们正在使用xcopy类型部署到QA。
我们在web.config中没有“compilerVersion”,targetFramework设置为“4.0”。我们已经完成了IISReset。
<system.web>
<compilation debug="true" targetFramework="4.0">
<assemblies>
<add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
<add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>
<add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>
</assemblies>
</compilation>
更新2:当我们删除整个部分时,我们已经过了错误。所以我的问题是,如果我们使用.NET 4.0,那么离开本节有什么问题?
我们刚刚完成了一个完整的xcopy,其中包含了Test to QA中的内容,而在QA中,它得到了错误而DEV没有。所以软件和配置是相同的。为什么它可以在一台服务器上运行而不在另一台服IIS选项似乎完全相同。
答案 0 :(得分:8)
取自:http://www.asp.net/whitepapers/aspnet4/breaking-changes#0.1__Toc256770150
你应该去你的服务器根web.config并包含整个
<system.codedom>...</system.codedom>
将内容标记为
<location path="" inheritInChildApplications="false">...</location>
标签
答案 1 :(得分:4)
答案 2 :(得分:1)
在与此争吵一段时间后,我最终使用不同的端口创建了一个新的IIS站点,并将我的ASP.Net 3.5应用程序添加到新站点,它运行良好。
答案 3 :(得分:1)
我收到了同样的错误,发现我的v4.0网站是在v2.0的默认网站下托管的。如果你有这样的设置,那么你需要从web.config中删除以下行:
<compilation defaultLanguage="c#" debug="true" targetFramework="4.0"/>
我希望有所帮助。