我在VS2013(更新1)中创建了一个新的ASP.NET MVC5Web项目,然后更新了所有的NuGet包。当我构建这个项目时,我得到了以下警告:
警告MSB3243:无法解决"Newtonsoft.Json,Version=6.0.0.0,Culture=neutral,PublicKeyToken=30ad4fe6b2a6aeed“和"Newtonsoft.Json,Version=4.5.0.0,Culture=neutral,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>
这正是警告所建议的。
如何修复此警告?
发布于 2014-02-01 22:45:02
下面是我用来修复警告的步骤:
替换对v5的引用
重新加载project
发布于 2014-10-31 00:11:11
我遇到这个问题是因为我更新了包,其中包括引用了Newtonsoft.Json 4.5.6的Microsoft.AspNet.WebApi,并且我已经安装了版本6。使用版本6还不够聪明。
为了解决这个问题,在WebApi更新之后,我打开了Tools > NuGet Package Manager > Pacakge Manager Console并运行:
Update-Package Newtonsoft.Json
日志显示6.0.x和4.5.6版本都更新到了最新版本,一切正常。
我有预感这个问题还会再次出现。
发布于 2014-02-17 06:48:30
我发现从项目文件中删除这一部分可以解决这个问题。
<ItemGroup>
<Reference Include="Newtonsoft.Json">
<HintPath>..\packages\Newtonsoft.Json.6.0.1\lib\net45\Newtonsoft.Json.dll</HintPath>
</Reference>
https://stackoverflow.com/questions/21498074
复制相似问题