要使用 Npgsqlddexprovider 将 Entity Framework 6.1.3 与 PostgresSql 一起使用,需要预先步骤

1)从位置 C:\ Windows \ Microsoft.NET \ Framework \ v4.0.30319 \ Config 和 C:\ Windows \ Microsoft.NET \ Framework64 \ v4.0.30319 \ Config 备份 Machine.config

2)将它们复制到不同的位置并将其编辑为

a)在 <system.data> <DbProviderFactories> 下找到并添加

            <add name="Npgsql Data Provider" invariant="Npgsql" support="FF"
            description=".Net Framework Data Provider for Postgresql Server"
            type="Npgsql.NpgsqlFactory, Npgsql, Version=2.2.5.0, Culture=neutral, PublicKeyToken=5d8b90d52f46fda7" />

b)如果已经存在于条目之上,请检查 verison 并进行更新。

  1. 用更改的文件替换原始文件。
  2. 以管理员身份运行 VS2013 的开发人员命令提示符。
  3. 如果已安装 Npgsql 使用命令“gacutil -u Npgsql”卸载然后通过命令“gacutil -i [dll 的路径]”安装新版本的 Npgsql 2.5.0
  4. 对 Mono.Security 4.0.0.0 做以上操作
  5. 下载 NpgsqlDdexProvider-2.2.0-VS2013.zip 并从中运行 NpgsqlDdexProvider.vsix(关闭 Visual Studio 的所有实例)
  6. 找到 EFTools6.1.3-beta1ForVS2013.msi 并运行它。
  7. 创建新项目后,从 Manage Nuget Packages 中安装 EntityFramework(6.1.3),NpgSql(2.5.0)和 NpgSql.EntityFramework(2.5.0) 版本。完成后继续……添加新的实体数据模型你的 MVc 项目