这发生在ASP.Net MVC 4项目中。
我发现了查看MSBuild详细输出here的绝佳建议。似乎 System.Web.Providers.dll 引用4.5.0.0导致此错误。
我在运行时尝试了web.config中的绑定重定向 - > assemblyBinding
<dependentAssembly>
<assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" />
<bindingRedirect oldVersion="1.0.0.0-4.4.0.0" newVersion="5.0.0.0" />
</dependentAssembly>
当我重建项目时,我仍然收到以下消息:
考虑app.config重新映射程序集“EntityFramework, 文化=中立,PublicKeyToken = b77a5c561934e089“来自版本 “4.4.0.0”[]到版本“5.0.0.0” [C:\ Rhipheus \ Cloudlene.Rhipheus \包\ EntityFramework.5.0.0 \ lib中\ net45 \ EntityFramework.dll] 解决冲突并摆脱警告。
我将重定向扩展到4.5.0.0:
考虑app.config重新映射程序集“EntityFramework, 文化=中立,PublicKeyToken = b77a5c561934e089“来自版本 “4.5.0.0”[]到版本“5.0.0.0” [C:\ Rhipheus \ Cloudlene.Rhipheus \包\ EntityFramework.5.0.0 \ lib中\ net45 \ EntityFramework.dll] 解决冲突并摆脱警告。
相同的消息,但现在报告的版本是4.5.0.0。我将重定向升级到4.9.0.0无效(相同的消息只有版本的碰撞匹配我的重定向)。
有人能指出我做错了什么吗?我提前感谢不要将其视为没有建设性;)
答案 0 :(得分:0)
行。一旦我加入5.0.0.0,警告便消失了。猜测,绑定重定向不仅必须重定向旧引用,还必须重定向“主引用”。
<dependentAssembly>
<assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" />
<bindingRedirect oldVersion="0.0.0.0-5.0.0.0" newVersion="5.0.0.0" />
</dependentAssembly>