在新的 ASP.NET MVC 5 项目中更新 NuGet 包引用后,如何修复与 JSON.NET 的程序集版本冲突? [英] How can I fix assembly version conflicts with JSON.NET after updating NuGet package references in a new ASP.NET MVC 5 project?

查看:15
本文介绍了在新的 ASP.NET MVC 5 项目中更新 NuGet 包引用后,如何修复与 JSON.NET 的程序集版本冲突?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在 VS 2013(更新 1)中创建了一个新的 ASP.NET MVC 5 Web 项目,然后更新了所有 NuGet 包.当我构建项目时,我收到以下警告:

I created a new ASP.NET MVC 5 web project in VS 2013 (Update 1) then updated all NuGet packages. When I build the project, I get the following warning:

警告 MSB3243:无法解决Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed"和Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed"之间的冲突".

warning MSB3243: No way to resolve conflict between "Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed" and "Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed".

但是,当我检查 web.config 时,我发现绑定重定向已经到位:

When I check the web.config, however, I see that a binding redirect is in place:

  <dependentAssembly>
    <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
    <bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0"/>
  </dependentAssembly>

这正是警告所建议的.

如何解决此警告?

推荐答案

这里是我用来修复警告的步骤:

Here the steps I used to fix the warning:

  • 在 VS 中卸载项目
  • 编辑 .csproj 文件
  • 搜索所有对 Newtonsoft.Json 程序集的引用
    • 找到两个,一个到 v6,一个到 v5
    • 将 v5 的引用替换为 v6

    这篇关于在新的 ASP.NET MVC 5 项目中更新 NuGet 包引用后,如何修复与 JSON.NET 的程序集版本冲突?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆