有几篇与PostgreSQL安装相关的帖子和文章,但它们有点令人困惑,并为不同的版本提供了不同的方法 .
这篇文章将帮助那些想要使用PostgreSQL和Entity框架的人 - 数据库第一种方法 .
要求:VS 2017 PostgreSQL DB 11.1 EF 6
STEP 1 :
安装PostgreSQL v-11.1的latest版本(没试用较低版本)
STEP 2 :
使用堆栈构建器工具安装npgsql .NET连接器(在下图中突出显示) . [在里面找到它.. .. \ PostgreSQL \ 11 \ bin \ stackbuilder.exe]
STEP 3 :
转到环境变量,在 System Variables 下修改 path 并添加PostgreSQL的lib和bin文件夹路径
[已安装的驱动器]:\ ... \ PostgreSQL \ 11 \ bin
[已安装的驱动器]:\ ... \ PostgreSQL \ 11 \ lib
STEP 4 :
Important! 下载并安装Visual Studio的Npgsql.vsix扩展(当您要为实体框架分配连接以进行数据库访问时,需要为数据源向导提供PostgreSQL作为选项)
STEP 5 :
创建一个新项目 . 对于EF 6,添加以下Nuget包 - > EntityFramework6.Npgsql
注意:上面的包将为您下载所需的依赖项
STEP 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>
SIDE NOTE : 无需像某些文章中所建议的那样在GAC或VS程序集中单独安装npgsql dll,因为新版本会为您执行此操作 .
1 回答
STEP 1 :
安装PostgreSQL v-11.1的latest版本(没试用较低版本)
STEP 2 :
使用堆栈构建器工具安装npgsql .NET连接器(在下图中突出显示) . [在里面找到它.. .. \ PostgreSQL \ 11 \ bin \ stackbuilder.exe]
STEP 3 :
转到环境变量,在 System Variables 下修改 path 并添加PostgreSQL的lib和bin文件夹路径
[已安装的驱动器]:\ ... \ PostgreSQL \ 11 \ bin
[已安装的驱动器]:\ ... \ PostgreSQL \ 11 \ lib
STEP 4 :
Important! 下载并安装Visual Studio的Npgsql.vsix扩展(当您要为实体框架分配连接以进行数据库访问时,需要为数据源向导提供PostgreSQL作为选项)
STEP 5 :
创建一个新项目 . 对于EF 6,添加以下Nuget包 - > EntityFramework6.Npgsql
注意:上面的包将为您下载所需的依赖项
STEP 6 :
将实体框架模型和相关连接设置添加到配置文件 .
最后将以下代码片段添加到配置文件中:
SIDE NOTE : 无需像某些文章中所建议的那样在GAC或VS程序集中单独安装npgsql dll,因为新版本会为您执行此操作 .