关于实体框架:Firebird .NET Provider 5.0.0 和 EF6

Firebird .NET Provider 5.0.0 and EF6

我一直在尝试创建 Firebird 数据库的实体数据模型,但我无法通过此错误:

this

1
2
3
4
5
    <system.data>
         <DbProviderFactories>
           
         </DbProviderFactories>
    </system.data>

这是我的 App.config:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
 <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" />
         
     </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>

这是我的连接字符串:

1
metadata=res://*/Model1.csdl|res://*/Model1.ssdl|res://*/Model1.msl;provider=FirebirdSql.Data.FirebirdClient;provider connection string="character set=NONE;initial catalog=C:\\Users\\brakm\\Desktop\\test.fdb;user id=sysdba;password=masterkey;data source=localhost"

更多信息:

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

编辑

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


设法修复它,

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