我正在尝试ASP.NET MVC4 Web API项目。我正在尝试通过nuget安装ravendb客户端。这是错误:
Attempting to resolve dependency 'NLog (= 2.0.0.2000)'.
Successfully installed 'Newtonsoft.Json 4.0.8'.
Successfully installed 'NLog 2.0.0.2000'.
Successfully installed 'RavenDB.Client 1.0.960'.
Install failed. Rolling back...
Updating 'Newtonsoft.Json 4.5.1' to 'Newtonsoft.Json 4.0.8' failed. Unable to find a version of 'Microsoft.AspNet.WebApi.Client' that is compatible with 'Newtonsoft.Json 4.0.8'.
所以我可以看到Microsoft ASP.NET Web API客户端库(我认为这是我安装的:http://nuget.org/packages/Microsoft.AspNet.WebApi.Client)依赖于Newtonsoft.Json(≥4.5.1)
这表示ravendb客户端安装需要(= 4.0.8)http://nuget.org/packages/RavenDB.Client/1.0.960
所以我看了,这个问题非常相似:Nuget package dependencies. Does it work the way it should?但这有点老了,看起来问题有所不同 - 这里Raven确实似乎需要Newtonsoft.Json 4.0.8
所以我的问题是,这可能吗?有没有办法(可能从命令行/通过控制台)我可以并排安装这两件事。如何让Microsoft.AspNet.WebApi.Client与Newtonsoft.Json很好地配合使用?
编辑:此问题和解决方案已过时。自问题发布以来已有four stable RavenDB builds。最新的稳定版本实际上可以解决这个问题,并且不应该仅仅为了解决这个问题而尝试使用不稳定版本。
答案 0 :(得分:16)
ravendb google群组有两个解决此问题的方法:
使用新的(和不稳定的)v1.2 RavenDB,这可以通过内化它们对Json.Net的依赖来解决问题,这样你就可以从Nuget获得该版本而不是v1。
http://builds.hibernatingrhinos.com/builds/RavenDB-Unstable并下载build 2014
或者显然你可以使用不使用Json.net作为序列化器的测试版WebApi。
有关此问题的更多信息,请查看:
https://groups.google.com/d/topic/ravendb/7qS4YspGnOo/discussion https://groups.google.com/d/topic/ravendb/4qTcE3Up6k0/discussion
答案 1 :(得分:13)
如前所述,使用客户端的不稳定版本可以解决问题。我刚刚安装了RavenDB Client build 2025。
如果你想使用NuGet,你必须使用控制台安装并指定'-Pre'参数:
安装包RavenDB.Client -Pre
抓住最新的不稳定版RavenDB。
答案 2 :(得分:0)
此问题和解决方案已过时。自问题发布以来已有four stable RavenDB builds。最新的稳定版本实际上可以解决这个问题,并且不应该仅仅为了解决这个问题而尝试使用不稳定版本。