当前存在任何方式,当我想使用 ASP.NET vNext 时,如何与 PostgreSql 数据库通信?我正在寻找解决方案,该解决方案主要适用于 linux。
EF7 现在仅支持 MS SQL 和 SqlLite,并且 Npgsql 未移植到 ASP.NET vNext。
谢谢
当前存在任何方式,当我想使用 ASP.NET vNext 时,如何与 PostgreSql 数据库通信?我正在寻找解决方案,该解决方案主要适用于 linux。
EF7 现在仅支持 MS SQL 和 SqlLite,并且 Npgsql 未移植到 ASP.NET vNext。
谢谢
您可以将 NHibernate 与 Fluent NHibernate 一起使用,而不是 EF7。Npgsql 在 Linux 上的 ASP.NET 5 (vNext) 上也运行良好。这是一个完整的ASP.NET vNext 应用程序示例,其中 NHibernate + PostgreSQL 在 ubuntu 服务器上运行。
我仍在对此进行测试(dnx-coreclr-win-x64.1.0.0-rc2-16177
目前正在测试),但自从@bricelam 回答以来,他们已经取得了很大进展。他们现在有一些EF7 文档,包括一些关于CoreCLR 支持的文档
这是我的 project.json 的一部分:
"dependencies": {
"EntityFramework.Commands": "7.0.0-rc2-*",
"EntityFramework.Core": "7.0.0-rc2-*",
"EntityFramework.Relational": "7.0.0-rc2-*",
"EntityFramework7.Npgsql": "3.1.0-rc1-2",
},
"frameworks": {
"dnxcore50": {}
}
您可能需要将https://www.myget.org/F/npgsql-unstable/api/v3/index.json添加到您的 NuGet 提要中才能提取该包。
编辑:我现在EntityFramework7.Npgsql": "3.1.0-rc1-2"
在我的 NuGet.config 中指定并仅使用此提要的确切版本: https ://www.myget.org/F/aspnetrelease/api/v3/index.json
编辑:这一切现在都可以在https://api.nuget.org/v3/index.json
在 Startup.cs 中:
public void ConfigureServices(IServiceCollection services)
{
services.AddEntityFramework()
.AddNpgsql()
.AddDbContext<YourDbContext>(options => options.UseNpgsql("your connectionString"))
;
}
Npgsql 社区正在开发 EF7 提供程序。如果您想开始使用它,我确信该代码在某处可用。