gpt4 book ai didi

c# - 使用 EF6 创建 ddex 的 Postgresql 失败

转载 作者:行者123 更新时间:2023-11-29 13:24:58 26 4
gpt4 key购买 nike

我正在尝试使用 Entity Framework 6,并将其连接到 Postgresql数据库。

我正在使用 npgsql.Entityframework,但在创建 ddex 文件时出现错误。 enter image description here

有人知道为什么吗?

谢谢。

最佳答案

安装 Npgsql,在 Entity FrameworkPostgreSql 之间工作:

  1. https://github.com/npgsql/npgsql/releases 下载并安装Setup_NpgsqlDdexProvider.exe .
  2. 打开 Visual-Studio,单击选项卡:TOOLS -> Setup Npgsql DbProviderFactories。将打开一个窗口,您需要单击“确定”。

enter image description here

  1. 关闭 Visual-Studio 并使用记事本以 管理员 打开 .NET 的两个 ma​​chine.config 文件。

我们需要编辑两个文件,您可以在路径中找到该文件:

  • C:\Windows\Microsoft.NET\Framework\v4.0.30319\Config\machine.config
  • C:\Windows\Microsoft.NET\Framework64\v4.0.30319\Config\machine.config

将流动元素添加到文件中:

<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>
  1. 在需要的项目中重新打开 Visual-Studio。
  2. 通过 Nuget 安装 Entity Framework 。
  3. 打开包管理器控制台并插入命令:

    Install-Package EntityFramework6.Npgsql

检查所需的 DLL 是否为引用,如下所示:

enter image description here

如果没有手动添加DLL。应该在路径上:

  • C:\Users\YOURCOMPUTERNAME\documents\visual studio 2015\Projects\PostgreSqlVsEfwDemo\packages\Npgsql.3.0.5\lib\net45\Npgsql.dll
  • C:\Users\ YOURCOMPUTERNAME\documents\visual studio 2015\Projects\PostgreSqlVsEfwDemo\packages\EntityFramework6.Npgsql.3.0.5\lib\net45\EntityFramework6.Npgsql.dll
  1. 打开 App.config\Web.config 并添加两个元素:

    • entityFramework -> providers 中的 provider 元素。这样:

    • DbProviderFactories 中的提供者元素。这样:

      <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>元素不存在,全部添加。

  1. 现在让我们像这样添加实体数据模型:
    • 选择“来自数据库的 EF 设计器”

enter image description here

  • 点击“新建连接”

enter image description here

  • 选择“PostgreSQL 数据库”作为数据源: enter image description here

  • 填写字段:

    • 主持人
    • 用户名
    • 密码
    • 端口
    • DATABASE(最后填写此字段。)

enter image description here

  1. 单击“测试连接”以查看它是否有效。

  2. 像往常一样继续使用 Entity Framework。

希望对你有帮助。

This document Npgsql Docs 确实帮助了我,但仍然存在问题。

关于c# - 使用 EF6 创建 ddex 的 Postgresql 失败,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35570400/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com