如何使用Visual Studio 2017或.NET 4.5+设置PostgreSQL?

Mat*_*ner 1 .net postgresql entity-framework npgsql visual-studio

关于PostgreSQL的安装,有几篇文章和文章,但是它们有些混乱,并且为不同的版本提供了不同的方法。

这篇文章将为那些希望将PostgreSQLEntity Framework结合使用的人提供帮助-数据库优先方法

要求:VS 2017 PostgreSQL DB 11.1 EF 6+

Mat*_*ner 5

步骤1 :

安装最新版本的PostgreSQL v-11.1(未试用较低版本)

第2步 :

使用堆栈生成器工具安装npgsql .NET连接器(下图突出显示)。[在内部查找-.. \ PostgreSQL \ 11 \ bin \ stackbuilder.exe]

在此处输入图片说明

第三步:

转到环境变量,在“ 系统变量”下修改路径,并添加PostgreSQL的lib和bin文件夹路径

  • [已安装的驱动器]:\ ... \ PostgreSQL \ 11 \ bin
  • [已安装的驱动器]:\ ... \ PostgreSQL \ 11 \ lib

第四步 :

重要!下载并安装Visual Studio的 Npgsql.vsix扩展(当您想为数据库访问分配到Entity Framework的连接时,需要Data Source向导来为您提供PostgreSQL)

步骤5:

创建一个新项目。对于EF 6+,添加以下Nuget包-> EntityFramework6.Npgsql

注意:以上软件包将为您下载所需的依赖项

步骤6:

将实体框架模型和相关的连接设置添加到配置文件。

最后,将以下代码片段添加到配置文件中:

<system.data>
    <DbProviderFactories>
      <remove invariant="Npgsql" />
      <add name="Npgsql Data Provider" invariant="Npgsql" description=".Net Data Provider for PostgreSQL" type="Npgsql.NpgsqlFactory, Npgsql, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" support="FF" />
    </DbProviderFactories>
</system.data>
Run Code Online (Sandbox Code Playgroud)

旁注无需按照某些文章中的建议在GAC或VS程序集中单独安装npgsql dll,因为新版本可为您完成此操作。