【发布时间】:2020-07-25 20:14:21
【问题描述】:
我正在做一个项目,我需要 Microsoft azure SDK 和 Autodesk NuGet 包.json'。 当我检查引用对象浏览器时,我得到了 2 个版本的 Newtonsoft,其中一个 6.0 指的是 Microsoft azure sdk。
我试图从 .csproj 中删除旧版本,但没有找到。
这是下面的对象浏览器屏幕
我得到的错误是
“JsonConvert”类型存在于“Newtonsoft.Json”中, 版本=6.0.0.0,文化=中性,PublicKeyToken=30ad4fe6b2a6aeed' 和 'Newtonsoft.Json,版本=11.0.0.0,文化=中性, PublicKeyToken=30ad4fe6b2a6aeed'
任何解决它的建议,我确实尝试检查这两个包的依赖关系,但一个确实需要大于 10 的 Newtonsoft 版本,而其他仍然只引用 6.0
编辑: 得到了解决方案,所以在这里添加我提到的内容
【问题讨论】:
-
hm.. 你在使用 nuget / nuget 包吗?
-
这通常发生在另一个库做了一些令人讨厌的事情时,例如直接导入源作为其构建的一部分,或者使用 IL-merge 在编译后绑定程序集。不幸的是,它是一个完整的 PITA。最好的选择是联系提供令人讨厌的 DLL 的人并告诉他们他们是愚蠢的,并请像其他人一样使用包引用。困难的解决方法是“外部别名”,但这真的很难使用。
-
@sommmen 一个是 nuget,另一个是 SDK
-
@MarcGravell 是的,现在真的很头疼,因为在成功代表演示并获得批准后,在将其集成到主源时,一切都因为冲突而卡住了
标签: c# nuget-package