当绑定重定向已经存在时,有没有人知道为什么我们会收到MSB3247程序集版本错误(推荐绑定重定向)?
我们已经通过MSBuild详细错误和AsmSpy进行了常规检查以检查这一点。
来自MSBuild的诊断日志中的错误表明:
C:\Program Files (x86)\MSBuild\12.0\bin\Microsoft.Common.CurrentVersion.targets(1635,5): warning MSB3247: Found conflicts between different versions of the same dependent assembly.
In Visual Studio, double-click this warning (or select it and press Enter) to fix the conflicts; otherwise, add the following binding redirects to the "runtime" node in the application configuration file:
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1"><dependentAssembly><assemblyIdentity name="System.Web.Mvc" culture="neutral" publicKeyToken="31bf3856ad364e35" /><bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" /></dependentAssembly></assemblyBinding> [Z:\PathTo\WebProject.csproj]
在WebProject.csproj的web.config中,我们有:
<dependentAssembly>
<assemblyIdentity name="System.Web.Mvc" publicKeyToken="31bf3856ad364e35" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
在我们的开发机器和当前构建服务器上,我们不会收到错误。但是在我们正在建立的一些全新的构建机器上,我们正在看到它。我认为这可能与.NET 4.5.1或新分离的MS Build工具包有关吗?
我不能为我的生活弄清楚为什么它不开心 - 任何有关调试的提示(请记住我们只在带有构建工具的机器上!)