Visual Studio 2015 中的向导中缺少 PostgreSQL 数据提供程序

Nin*_*uts 2 postgresql npgsql sql-server-ce entity-framework-6 visual-studio-2015

我花了一天时间尝试将 Entity Framework 6 SQL Server CE 迁移到 PostgreSQL。

我已经很好地复制了数据库,但我似乎无法让数据提供程序正常工作。

首先,我尝试了旧版 2.2.7 版本的 EF 提供程序,它不需要 .NET 4.5(因为我们的项目无法使用它),但这不起作用。我一直在使用NpgsqlConnection而不是SqlConnectionStringBuilder更改 app.config 以具有连接字符串Host(我尝试过,Server但它不喜欢它)和Database值,并确保 EF 部分如下:

<entityFramework>
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
    <providers>
        <provider invariantName="Npgsql" type="Npgsql.NpgsqlServices, EntityFramework6.Npgsql" />
    </providers>
</entityFramework>
Run Code Online (Sandbox Code Playgroud)

我现在忽略了这个限制,只是为了尝试让它工作,所以我有 EF 提供程序的 EF6 v3.1.1 版本和最新的 .NET 提供程序 (v3.2.2),但它们也不起作用。

为了修复它,我还尝试通过安装 VS2015 扩展将 EDMX 从 SQL Server CE 重新同步到 PostgreSQL 替换,但它只是给出一条消息,指出发生了错误,所以我尝试了以下操作:https://github.com/npgsql/npgsql/issues/1514 进一步打开了窗口,但当我在框中输入内容时就崩溃了。自从将项目升级到.NET 4.5后,这个提供程序就不再出现了......

我已经多次尝试重新安装所有内容并多次重新启动 VS,并且自从升级以来我还尝试安装 GAC 文件,因为不清楚 VS 扩展是否需要它们(也是 v3.2.2)。

有谁能够阐明如何最简单地实现所有这些工作,最好不需要 .NET 4.5?

谢谢

tsc*_*han 5

我通过安装 Visual Studio Extension Npgsql PostgreSQL Integration得到了它。按照本页上的说明进行操作: https: //www.npgsql.org/efcore/

该线程引导我走上正确的道路:Add custom data source to Visual Studio 2015