在新的ASP.NET MVC 5项目中更新NuGet程序包引用后,如何解决与JSON.NET的程序集版本冲突?

吉姆·兰姆

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

警告MSB3243:无法解决“ Newtonsoft.Json,版本= 6.0.0.0,文化=中性,PublicKeyToken = 30ad4fe6b2a6aeed”和“ Newtonsoft.Json,版本= 4.5.0.0,文化=中性,PublicKeyToken = 30ad4fe6b2a6aeed”之间的冲突。

但是,当我检查web.config时,我看到绑定重定向已就位:

  <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>

这正是警告所建议的。

如何解决此警告?

吉姆·兰姆

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

  • 在VS中卸载项目
  • 编辑.csproj文件
  • 搜索对Newtonsoft.Json程序集的所有引用
    • 找到两个,一个对v6,一个对v5
    • 用v6替换对v5的引用
  • 重新载入专案
  • 生成并注意程序集引用失败
  • 查看参考,发现Newtonsoft.Json现在有两个。删除无法解决的问题。
  • 重建-无警告

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

ASP.NET MVC尝试加载旧版本的Owin程序集

.net核心参考与幻影程序集版本冲突

MVC 6(Asp.net 5)中损坏的基本NuGet程序包

使用 .NET-Standard 2.0 项目构建 ASP.NET-Core 3.1 会导致冲突的 Microsoft.AspNetCore.Mvc.Analyzers 程序集

Asp.Net MVC程序集参考错误

新的ASP.Net MVC项目的体系结构

ASP.NET Core MVC:定位的程序集的清单定义与程序集引用不匹配

使用ASP.NET(MVC 4)Web API OData预发行版本无法加载文件或程序集System.Net.Http,Version = 4.0.0.0

ASP.NET Core 2.2 - 如何从项目引用的程序集中检索 NuGet 包依赖项

如何解决ASP.NET Core MVC项目中的“找不到视图”异常

.NET分析工具:程序包版本与程序集版本

新的ASP.NET 5(ASP.NET MVC 6)项目类型可以定位常规的.NET吗?

如何将ASP.NET Core MVC项目分离为多个程序集(.dll)?

Asp.Net 5:如何从project.json文件加载程序集版本?

.NET 程序集如何在 IIS ASP.NET 上下文中检测自己的版本?

如何在ASP.NET Core(面向.NET Framework的目标)项目中引用旧程序集?

在ASP.NET MVC Core应用程序(RC2)中显示项目版本

无法在asp.net版本4.0上部署我的asp.net MVC Web应用程序

无法在两个NET Standard项目中整合NuGet程序包传递依赖项版本

ASP.NET 在 mvc 6 项目中

检索ASP Net Core 2.0 MVC中的应用程序版本

如何在ASP.NET 5 MVC 6项目中切换到完整的.NET堆栈

无法在Visual Studio 2013中创建新的MVC5项目或任何其他ASP .NET项目

ASP.NET 5无法安装ASP.NET 5 NuGet程序包

跨上下文和程序集的ASP.NET MVC实体框架连接实体

安装 Visual Studio Build Tools 2017 时没有“ASP.NET MVC 4”程序集

ASP.NET MVC中的时区冲突

无法在.NET 4 MVC 4应用程序中加载文件或程序集版本为2.0.5.0的系统

ASP.NET:由Nuget引起的.NET Framework / Standard / Core DLL冲突。“您必须添加对程序集System.Runtime的引用...”