.NET Core的RavenDB依赖问题

时间:2016-11-05 04:55:55

标签: c# asp.net asp.net-core ravendb .net-core

我正在尝试使用RavenDB在.NET Core中创建嵌入式数据库。虽然RavenDB.Client包正在恢复而没有任何问题,但是RavenDB.Database包(创建嵌入式数据库所需)并没有正确恢复,即使它只是依赖是RavenDB.Client。我收到一条错误消息,指出RavenDB.Database与.netcoreapp1.0不兼容。这是我的package.json的照片:

enter image description here

1 个答案:

答案 0 :(得分:2)

Package RavenDB.Database 3.5.0 supports: net45 (.NETFramework,Version=v4.5)。因此netcoreapp1.0不支持。您还可以下载https://www.nuget.org/api/v2/package/RavenDB.Database/3.5.0包,解压缩并查看lib文件夹以查看它支持的内容。

由于RavenDB.Client支持netstandard1.3netcoreapp1.0通过David Fowler的以下类比支持interface INetCoreApp10 : INetStandard15 //What we care about in this case { } interface INetStandard10 { void Primitives(); void Reflection(); void Tasks(); void Collections(); void Linq(); } interface INetStandard11 : INetStandard10 { void ConcurrentCollections(); void InteropServices(); } interface INetStandard12 : INetStandard11 { void ThreadingTimer(); } interface INetStandard13 : INetStandard12 //NetStandard version this library supports { void FileSystem(); void Console(); void ThreadPool(); void Process(); void Sockets(); void AsyncLocal(); } interface INetStandard14 : INetStandard13 { void IsolatedStorage(); } interface INetStandard15 : INetStandard14 { void AssemblyLoadContext(); }

frameworks

https://gist.github.com/davidfowl/8939f305567e1755412d6dc0b8baf1b7#file-_platform-cs-L127

TLDR; 如果要使用此库,请使用.NET 4.5而不是.NET Core。或者等到这个库被移植到.NET Core。

为此,请将project.json中的"frameworks": { "net45": { } } 更改为相应的项目:

Microsoft.NETCore.App

注意:您还需要删除SELECT c.id AS cat_id, parent.id AS parent_id, parent.name AS main_category_name, c.name AS sub_category_name FROM category c JOIN category parent ON c.parent_id = parent.id 依赖项。