我有一个复杂的解决方案突然 - 我的意思是突然,好几天它编译得很好,下一刻也没有 - 开始抱怨Newtonsoft版本的兼容性:
严重级代码描述项目文件行抑制状态 错误CS1705汇编' UploadFramework'有身份 ' UploadFramework,Version = 1.0.0.0,Culture = neutral, 公钥=空'使用' Newtonsoft.Json,Version = 9.0.0.0, Culture = neutral,PublicKeyToken = 30ad4fe6b2a6aeed'哪个有更高的 版本比参考汇编' Newtonsoft.Json'有身份 ' Newtonsoft.Json,Version = 6.0.0.0,Culture = neutral, 公钥= 30ad4fe6b2a6aeed' UploadProcessor..NET框架 4.6 C:\ Programming \ ConnellCampaigns \ src \ UploadProcessor \ batch \ EnvelopeSalutationJob.cs 341 Active
我完全不知道如何解决这个问题...据我所知,代码库中没有任何变化。
然而,我刚刚做了一次"重组使用"整个解决方案,修改了很多文件。 OTOH,一旦我遇到这个问题,我立即恢复了所有的变化 - 谢天谢地! - 所以我应该回到原来的位置。
但我不是......
非常感谢任何有关如何解决这个问题的建议。
其他信息
我应该提到UploadFramework的project.json文件中有这一行:
"Newtonsoft.Json": "6.0.8"
6.0.8下面有一条蓝色波浪线,当你将鼠标悬停在它上面时,表示该项目以版本9.0.1结束。我不明白我如何具体定义特定版本,最终得到一个更新的版本。也许这就是关于发生了什么的线索。
答案 0 :(得分:3)
您的解决方案中有两个不同版本的Newtonsoft程序集引用。您可以使用"合并" nuget包管理器中的选项,你应该没问题。
如果在恢复后它不起作用:干净是第一个尝试,有时你还需要清理/ packages文件夹 - 你可能有多个文件夹用于Newtonsoft这些。只需删除您不使用的版本即可。然后解决方案应该再次构建。