Firebird .NET Provider 5.0.0 和 EF6

Ale*_*dar 2 .net firebird entity-framework entity-framework-6

我一直在尝试创建 Firebird 数据库的实体数据模型,但我无法克服这个错误:

这个错误。

我已经安装:

  • DDEX 提供程序 3.0.2.0

  • Firebird .NET Provider 5.0.0.0(尝试使用来自 Firebird 官方网站的 .msi 安装它并手动将引用添加到项目并从 NuGet 安装它)

  • EntityFramework.Firebird(来自 NuGet)

这是我的 machine.config:

    <system.data>
         <DbProviderFactories>
            <add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" description=".NET Framework Data Provider for Firebird" type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient, Version=5.0.0.0, Culture=neutral, PublicKeyToken=3750abcc3150b00c"/>
         </DbProviderFactories>
    </system.data>
Run Code Online (Sandbox Code Playgroud)

这是我的 App.config:

 <configSections>
     <section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
 </configSections>

 <system.data>
     <DbProviderFactories>
         <remove invariant="FirebirdSql.Data.FirebirdClient" />
         <add name="FirebirdClient Data Provider" invariant="FirebirdSql.Data.FirebirdClient" description=".NET Framework Data Provider for Firebird" type="FirebirdSql.Data.FirebirdClient.FirebirdClientFactory, FirebirdSql.Data.FirebirdClient" />
     </DbProviderFactories>
 </system.data>

 <entityFramework>
     <providers>
         <provider invariantName="FirebirdSql.Data.FirebirdClient" type="FirebirdSql.Data.EntityFramework6.FbProviderServices, EntityFramework.Firebird" />
     </providers>
     <defaultConnectionFactory type="FirebirdSql.Data.EntityFramework6.FbConnectionFactory, EntityFramework.Firebird" />
 </entityFramework>
Run Code Online (Sandbox Code Playgroud)

这是我的连接字符串:

metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=FirebirdSql.Data.FirebirdClient;provider connection string=&quot;character set=NONE;initial catalog=C:\Users\brakm\Desktop\test.fdb;user id=sysdba;password=masterkey;data source=localhost&quot;
Run Code Online (Sandbox Code Playgroud)

更多信息:

  • 视觉工作室 2015
  • 火鸟版本是2.5
  • 尝试使用 EF 6.0 和 EF 6.13

编辑

我试过在新的(干净的)项目(C# 控制台应用程序)中创建模型并且它工作正常。我安装了 EntityFramework.Firebird(来自 NuGet)并自动安装了基础 EF 和 Firebird sql 提供程序,但是在对原始项目执行相同操作后没有任何变化,我尝试从与 firebird 相关的任何内容中清除项目,包括删除引用、清除 packages.config 和手动从项目中删除任何与 firebird 相关的文件。

Ale*_*dar 5

设法修复它,

  • 从项目中删除所有实体框架和 Firebird 引用
  • 清除packages.config文件
  • 从项目目录中删除所有链接到 EF 和 Firebird 的文件
  • 从 NuGet 下载 EntityFramework.Firebird(默认情况下,这将自动安装 FirebirdClient 和 EntityFramework 最旧的兼容版本)
  • 将 EF 更新到最新版本,因为 base 6.0 导致未知(对我而言)原因的崩溃