2016-05-18 2 views
2

Ich habe versucht Entity Data Model von Firebird-Datenbank zu erstellen, aber ich kann nach diesem Fehler nicht erhalten:Firebird .NET-Provider 5.0.0 und EF6

this error.

ich installiert haben:

  • DDEX Anbieter 3.0.2.0

  • Firebird .NET-Provider 5.0.0.0 (versucht, beide mit .msi von Firebird offiziellen Website zu installieren und das manuelle Hinzufügen refrence zu Projekt und es von NuGet)

  • EntityFramework.Firebird (von NuGet)

Hier ist meine machine.config Installation:

<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> 

und hier ist meine 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> 

Hier ist meine Verbindung str ing:

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; 

Weitere Informationen:

  • Visual Studio 2015
  • Firebird Version 2.5
  • Versuchte ist EF 6.0 und EF mit 6,13

EDIT

Ich habe versucht, ein Modell in einem neuen (sauberen) Projekt (C# -Konsolenanwendung) zu erstellen, und es hat funktioniert. Ich installierte EntityFramework.Firebird (von NuGet) und es automatisch installiert Basis EF und Firebird sql Anbieter, aber nachdem ich das gleiche mit dem ursprünglichen Projekt nichts geändert habe, versuchte ich Reinigung Projekt von allem im Zusammenhang mit Firebird einschließlich Entfernen von Referenzen, Löschen von packages.config und manuell Löschen einer Firebird-Datei aus dem Projekt.

+0

auch Ihre Verbindungszeichenfolge – magicandre1981

+0

bearbeiten in Verbindung String – Aleksandar

+0

innerhalb VS schreiben, klicken Sie auf Server-Manager und versucht, eine Verbindung mit dem FB datbase zu erstellen. Ich denke, das scheitert und du kannst FB hier nicht sehen. Richtig? Nachdem eine VSIX-Erweiterung aktualisiert wurde, ist der DDEX-Provider verloren (http: // tracker.firebirdsql.org/browse/DNET-581). Repariere DDEX und versuche es jetzt erneut. – magicandre1981

Antwort

3

Managed es zu beheben,

  • Entfernen Sie alle Entity Framework und Firebird-Referenzen aus Projekt
  • löschen packages.config Datei
  • alle Dateien löschen, die EF und Firebird aus Projektverzeichnis verknüpft sind
  • Laden Sie EntityFramework.Firebird von NuGet herunter (dies wird automatisch die älteste kompatible Version von FirebirdClient und EntityFramework installieren)
  • Update EF auf die neueste Version ns seit Base 6.0 verursachte Abstürze für unbekannte (ich) Grund
+1

schön zu hören, dass Sie es behoben :) +1 – magicandre1981