如何使用 DotConnect For PostgreSQL 和 Entity Framework Code First

4

我正在尝试在我的项目中使用PostgreSQL数据库。 我想学习代码优先开发。 我下载了dotconnect for PostgreSql(试用版),并将Devart.Data.PostgreSql dll添加到我的引用中。然后,我在我的app.copnfig文件中添加了这些行。

 <connectionStrings>
        <add name="SchoolDBConnectionString" connectionString="Server=localhost;Port = 5432;Database=MyDataBase;user Id=postgres;password=*****" providerName="Devart.Data.PostgreSql" />
    </connectionStrings>
<system.data> 
    <DbProviderFactories>
        <remove invariant="Devart.Data.PostgreSql" />
        <add name="dotConnect for PostgreSQL" invariant="Devart.Data.PostgreSql" description="Devart dotConnect for PostgreSQL" type="Devart.Data.PostgreSql.PgSqlProviderFactory, Devart.Data.PostgreSql, Version= 6.8.333.0, Culture=neutral, PublicKeyToken=09af7300eec23701" />
    </DbProviderFactories>
  </system.data>
</configuration>

当我执行我的应用程序时出现了这个异常:

从数据库获取提供程序信息时发生了错误。这可能是由于Entity Framework使用了不正确的连接字符串引起的。检查内部异常以获取详细信息并确保连接字符串正确。


请在此处发布您的调用堆栈和内部异常。如果可能,请向我们发送一个小的测试项目,以便我们可以在我们的环境中重现此问题:http://www.devart.com/company/contactform.html。 - Devart
谢谢。我已经发送了一个小测试项目。我需要一个解决方案。 - Alkao12
你能解决 DevArt 的问题吗?我也遇到了同样的问题,但无法从他们那里得到任何反馈。 - khorvat
1个回答

0
尝试添加这个(未经测试)
<provider invariantName="Devart.Data.PostgreSql" type="Devart.Data.PostgreSql.Entity.PgSqlEntityProviderServices,
Devart.Data.PostgreSql.Entity, Version=7.1.26.6, Culture=neutral, PublicKeyToken=09af7300eec23701" />

<entityFramework>
    <providers>
      <provider invariantName="Devart.Data.PostgreSql" type="Devart.Data.PostgreSql.Entity.PgSqlEntityProviderServices,
      Devart.Data.PostgreSql.Entity, Version=7.1.26.6, Culture=neutral, PublicKeyToken=09af7300eec23701" />
    </providers>
</entityFramework>

注意:请将 7.1.26.6 替换为实际的程序集版本。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接