服务器之家

服务器之家 > 正文

C#使用EF连接PGSql数据库的完整步骤

时间:2022-03-07 13:58     来源/作者:wnxyz8023

前言

由于项目需要,使用到了pgsql数据库,说实话这是第一次接触并且听说pgsql(postgresql)关系型数据库,之前一直使用的都是sqlserver,一头雾水的各种找资源,终于将pgsql与c#的ef连接起来,可以像使用sqlserver一样使用pgsql了。

pgsql目前有一个pgadmin4的管理工具,下载之后就可以直接访问我们的数据库了。

pgadmin4下载

1.为了演示方便,我们新建一个控制台程序,同时新建一个entity的类库,后续添加实体模型使用。

C#使用EF连接PGSql数据库的完整步骤

2.我们点击工具-->>扩展和更新 -->>安装pgsql所使用的扩展工具npgsql postgresql integration扩展工具。

C#使用EF连接PGSql数据库的完整步骤

C#使用EF连接PGSql数据库的完整步骤

3.安装完成之后,我们就可以测试连接我们的pgsql数据库了。在工具-->>连接到数据库我们在数据源一行点击更改按钮,就可以看到我们刚刚安装的pgsql扩展工具了。

C#使用EF连接PGSql数据库的完整步骤

4.在操作界面输入本地主机,和对应的数据库名称,以及用户名和密码。点击测试连接,可以看到此处已经连接成功了。

C#使用EF连接PGSql数据库的完整步骤

5.接着我们要在我们项目的entity类库中添加以下两个引用npgsql和entityframework6.npgsql。

具体的添加方法--右键项目--管理nuget包--输入名称下载即可。

在项目中添加相应的实体模型

C#使用EF连接PGSql数据库的完整步骤

添加完成之后,我们还要做一步操作就是在app.config中添加如下黑色的配置信息

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<entityframework>
 
 <defaultconnectionfactory type="system.data.entity.infrastructure.localdbconnectionfactory, entityframework">
 
 <parameters>
 
  <parameter value="mssqllocaldb" />
 
 </parameters>
 
 </defaultconnectionfactory>
 
 <providers>
 
 <provider invariantname="system.data.sqlclient" type="system.data.entity.sqlserver.sqlproviderservices, entityframework.sqlserver" />
 
 <provider invariantname="npgsql" type="npgsql.npgsqlservices, entityframework6.npgsql" />
 
 </providers>
 
 </entityframework>
 
 <system.data>
 
 <dbproviderfactories>
 
 <add name="npgsql data provider" invariant="npgsql" description="data provider for postgresql" type="npgsql.npgsqlfactory, npgsql" />
 
 </dbproviderfactories>
 
 </system.data>

注意:若在实体信息添加那一步即将选择表或视图时闪退,请确保你的项目中entityframework的版本是否低于或者高于entityframework6.npgsql所要求的版本,否则会直接闪退掉的。我们只需要更改下对应的版本即可。

C#使用EF连接PGSql数据库的完整步骤

最后,我们就可以在项目中使用ef实体对象来访问pgsql了。

由于我也是第一次使用到pgsql数据库,目前也是个新手小白,遇到不明白的问题也会通过各种资源去解决,希望可以帮助到同样第一次或者以后可能接触到pgsql的朋友。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对服务器之家的支持。

原文链接:http://www.cnblogs.com/wnxyz8023/p/10255524.html

标签:

相关文章

热门资讯

2022年最旺的微信头像大全 微信头像2022年最新版图片
2022年最旺的微信头像大全 微信头像2022年最新版图片 2022-01-10
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整
蜘蛛侠3英雄无归3正片免费播放 蜘蛛侠3在线观看免费高清完整 2021-08-24
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
返回顶部