Visual Studio 2015 年向导中缺少 PostgreSQL 数据提供程序
PostgreSQL data provider missing from wizard in Visual Studio 2015
我花了一天时间尝试将 Entity Framework 6 SQL 服务器 CE 迁移到 PostgreSQL。
我已经很好地复制了数据库,但我似乎无法让数据提供程序工作。
首先,我尝试了旧的 2.2.7 版本的 EF 提供程序,它不需要 .NET 4.5(因为我们的项目不能使用它),但是没有用。我一直在使用 NpgsqlConnection
而不是 SqlConnectionStringBuilder
并将 app.config 更改为具有 Host
的连接字符串(我尝试了 Server
但它不喜欢it) 和 Database
值,并确保 EF 部分如下所示:
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="Npgsql" type="Npgsql.NpgsqlServices, EntityFramework6.Npgsql" />
</providers>
</entityFramework>
我现在已经忽略了这个限制,只是为了尝试让它工作,所以我有 EF 提供程序的 EF6 v3.1.1 版本和最新的 .NET 提供程序 (v3.2.2),但它们都不起作用。
为了修复它,我也一直在尝试通过安装 VS2015 扩展将 EDMX 从 SQL 服务器 CE 重新同步到 PostgreSQL 替换,但它刚刚给了一条消息说发生了错误,所以我尝试了这个:https://github.com/npgsql/npgsql/issues/1514
更进一步,打开 window,但当我在框中输入时立即崩溃。自从项目升级到.NET 4.5后,这个provider根本就没有出现了...
我试过多次重新安装所有东西并多次重启 VS,自升级以来我也尝试安装 GAC 文件,因为不清楚 VS 扩展是否需要它们(也是 v3.2.2) .
有没有人能够阐明如何最简单地完成所有这些工作,最好不需要 .NET 4.5?
谢谢
我通过安装 Visual Studio 扩展 Npgsql PostgreSQL 集成 获得了它。
按照此页面上的说明进行操作:https://www.npgsql.org/efcore/
这个帖子让我走上了正确的道路:Add custom data source to visual studio 2015
按照 tsChan 的回答安装 npgsql 扩展对我来说还不够,我还必须修改我的 app.config(我怀疑是因为它是在我安装扩展之前创建的)以包含 npgsql 数据EntityFramework 部分中的提供商如下:
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="Npgsql" type="Npgsql.NpgsqlServices, EntityFramework6.Npgsql" />
</providers>
</entityFramework>
在我这样做之后,提供商出现在向导选项中。
Visual Studio 2019 年的向导中缺少 PostgreSQL 数据提供程序 //它有效
- 安装此扩展“Npgsql PostgreSQL 集成”https://marketplace.visualstudio.com/items?itemName=RojanskyS.NpgsqlPostgreSQLIntegration
- 从 Nu get 包管理器安装“EntityFramework6.Npgsql”包
- 安装后无需重新启动或编辑 app.config 文件,您将看到项目 references 文件夹和 app.config 文件
- 现在点击添加->新项目->ADO.NET实体数据模型->来自数据库的 EF 设计器->新连接->更改您将在数据源中看到 postgress
我花了一天时间尝试将 Entity Framework 6 SQL 服务器 CE 迁移到 PostgreSQL。
我已经很好地复制了数据库,但我似乎无法让数据提供程序工作。
首先,我尝试了旧的 2.2.7 版本的 EF 提供程序,它不需要 .NET 4.5(因为我们的项目不能使用它),但是没有用。我一直在使用 NpgsqlConnection
而不是 SqlConnectionStringBuilder
并将 app.config 更改为具有 Host
的连接字符串(我尝试了 Server
但它不喜欢it) 和 Database
值,并确保 EF 部分如下所示:
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="Npgsql" type="Npgsql.NpgsqlServices, EntityFramework6.Npgsql" />
</providers>
</entityFramework>
我现在已经忽略了这个限制,只是为了尝试让它工作,所以我有 EF 提供程序的 EF6 v3.1.1 版本和最新的 .NET 提供程序 (v3.2.2),但它们都不起作用。
为了修复它,我也一直在尝试通过安装 VS2015 扩展将 EDMX 从 SQL 服务器 CE 重新同步到 PostgreSQL 替换,但它刚刚给了一条消息说发生了错误,所以我尝试了这个:https://github.com/npgsql/npgsql/issues/1514 更进一步,打开 window,但当我在框中输入时立即崩溃。自从项目升级到.NET 4.5后,这个provider根本就没有出现了...
我试过多次重新安装所有东西并多次重启 VS,自升级以来我也尝试安装 GAC 文件,因为不清楚 VS 扩展是否需要它们(也是 v3.2.2) .
有没有人能够阐明如何最简单地完成所有这些工作,最好不需要 .NET 4.5?
谢谢
我通过安装 Visual Studio 扩展 Npgsql PostgreSQL 集成 获得了它。 按照此页面上的说明进行操作:https://www.npgsql.org/efcore/
这个帖子让我走上了正确的道路:Add custom data source to visual studio 2015
按照 tsChan 的回答安装 npgsql 扩展对我来说还不够,我还必须修改我的 app.config(我怀疑是因为它是在我安装扩展之前创建的)以包含 npgsql 数据EntityFramework 部分中的提供商如下:
<entityFramework>
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
<provider invariantName="Npgsql" type="Npgsql.NpgsqlServices, EntityFramework6.Npgsql" />
</providers>
</entityFramework>
在我这样做之后,提供商出现在向导选项中。
Visual Studio 2019 年的向导中缺少 PostgreSQL 数据提供程序 //它有效
- 安装此扩展“Npgsql PostgreSQL 集成”https://marketplace.visualstudio.com/items?itemName=RojanskyS.NpgsqlPostgreSQLIntegration
- 从 Nu get 包管理器安装“EntityFramework6.Npgsql”包
- 安装后无需重新启动或编辑 app.config 文件,您将看到项目 references 文件夹和 app.config 文件
- 现在点击添加->新项目->ADO.NET实体数据模型->来自数据库的 EF 设计器->新连接->更改您将在数据源中看到 postgress