在Visual Studio解决方案中是否可能引用不同的NuGet软件包版本?

8
我们是由7名成员组成的团队,希望使用Visual Studio创建一个云应用程序(Windows Azure)。我们的应用程序托管在GitHub上,因此我们选择使用NuGet包,尽可能使我们的存储库轻巧。
然而,我们的Visual Studio解决方案中的两个不同项目需要引用Newtonsoft.Json版本4.0.2或Newtonsoft.Json版本4.5.11。
我们已经尝试为每个项目引用正确的版本,但在构建时我们会出现以下错误:
1. 类型“Newtonsoft.Json.Linq.JObject”在未被引用的程序集中定义。必须添加对程序集“Newtonsoft.Json,Version=4.0.2.0,Culture=neutral,PublicKeyToken=null”的引用。 2. 无法隐式转换类型“Newtonsoft.Json.Linq.JObject”到“Newtonsoft.Json.Linq.JObject”
第二个错误表明,即使我们的解决方案中没有任何项目同时引用这两个版本,但它们之间仍存在冲突。
您有解决这个问题的任何想法吗?
谢谢。
PS:以下是我们找到的与此问题相关的最相关信息。

http://docs.nuget.org/docs/reference/known-issues

https://stackoverflow.com/search?q=NuGet+multi+packages+version


你如何在不同的项目中安装两个不同版本的Newtonsoft.Json?我猜想明确指定项目名称和软件包版本,像这样执行Install-Package Newtonsoft.Json -ProjectName ProjectA -Version 4.0.2Install-Package Newtonsoft.Json -ProjectName ProjectB -Version 4.5.11,应该就可以解决问题了吧? - Julian
1个回答

1

过了一段时间...我们已经重写了使用旧版本Newtonsoft.Json 4.0.2的代码片段。

谢谢。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接