EF的Code First是一个比较强大也比较有用的功能,他可以让你先写代码,最后根据代码去生成数据库,非常符合OO设计的要求,抛开数据库层面不管(当然不是完全的不管),只管对象的设计。

首先,说一下我做测试的环境:EF 6.0/PostgreSql 9.2

第一步:添加程序对EF的引用,有个偷懒的办法是,添加一个空的Code Fist ADO.NET实体数据模型,这样,VS会自动帮你添加对EF以及相关的DLL的引用

第二步:用Nuget添加对Npgsql For Entity Freamwork的引用,这样子的话,Nuget会自动帮你添加NpgSql和NpgSql.EntityFreamWork的引用,并且会对你的Config文件中添加配置。

2016年3月21日更新:先通过Nuget添加对EntityFramework6.Npgsql的引用

第三步:配置Config文件

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <configuration>
 3   <configSections>
 4     <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
 5   </configSections>
 6   <startup>
 7     <supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
 8   </startup>
 9   <entityFramework>
10     <defaultConnectionFactory type="System.Data.Entity.Infrastructure.LocalDbConnectionFactory, EntityFramework">
11       <parameters>
12         <parameter value="v11.0" />
13       </parameters>
14     </defaultConnectionFactory>
15     <providers>
16       <provider invariantName="Npgsql" type="Npgsql.NpgsqlServices, Npgsql.EntityFramework" />
17     </providers>
18   </entityFramework>
19   <system.data>
20     <DbProviderFactories>
21       <remove invariant="Npgsql"/>
22       <add name="Npgsql Data Provider" invariant="Npgsql" description=".Net Data Provider for PostgreSQL" type="Npgsql.NpgsqlFactory, Npgsql, Version=2.2.3.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" support="FF" />
23     </DbProviderFactories>
24   </system.data>
25   <connectionStrings>
26     <add name="ConnectionStr" connectionString="server=127.0.0.1;port=5432;Database=test;uid=*****;pwd=*****" providerName="Npgsql" />
27   </connectionStrings>
28 </configuration>
Config

相关文章:

  • 2022-12-23
  • 2022-01-21
  • 2021-05-19
  • 2021-08-08
  • 2021-10-10
  • 2018-01-30
  • 2021-11-26
  • 2021-06-29
猜你喜欢
  • 2021-08-17
  • 2022-12-23
  • 2022-12-23
  • 2021-10-21
  • 2021-07-01
  • 2021-12-16
相关资源
相似解决方案