sql >> Database teknologi >  >> RDS >> Mysql

Kan ikke bruge en MySQL-forbindelse til entity framework 6

SENESTE REDIGERING

Fejlen er blevet rettet.

Chris' kommentar:

2015-11-07, og du kan nu få det hele til at fungere uden at redigere nogen filer eller lave mærkelige ting. Brug MySQL til Windows-installationsprogrammet og inkluder Visual Studio-understøttelsen og den seneste Connector.Net. Sørg for at opdatere efter installationen, og du vil få den seneste af hver (1.2.5 og 6.9.8). Brug NuGet til at installere EntityFramework, MySql.Data og MySql.Data.Entity. Byg endelig og nyd kode-første reverseengineering godhed ved at tilføje en Ado.Net Entity Model.

Oprindeligt svar

Jeg fandt ud af, at det er en fejl fra MySQL.

Her er linket, der forklarer en løsning.

På din maskine, hvor VS 2013 er installeret, VS-plugin (1.1.3 GA) og Connector/Net

Luk alle VS-forekomster, før du udfører trinene.

Gå til denne sti i et Windows Stifinder-vindue, eller hvor som helst du har installeret din Connector/net binære filer

C:\Program Files (x86)\MySQL\MySQL Connector Net6.8.3\Assemblies\v4.5\

Kopier filen:

MySql.Data.Entity.EF6.dll

Og indsæt det i denne mappe

C:\Program Files (x86)\Microsoft Visual Studio12.0\Common7\IDE\PrivateAssemblies

Hvis den beder dig om at overskrive den, så gør det.

Du skal bruge administratorrettigheder for at overskrive filen.

Derefter kan du prøve igen at generere scriptet til din model.

Det er vigtigt, at du har 1.1.3-versionen af ​​VS-plugin installeret, da denne løsning er til det.

Desværre virker det ikke for mig, så jeg nedgraderede til enhedsramme 5, indtil de fikser dette.

REDIGER

Endelig virker det nu.

Jeg var nødt til at tilføje de 3 følgende DLL'er:

  • C:\Program Files (x86)\MySQL\MySQL Connector Net6.8.3\Assemblies\v4.5\MySql.Data.dll
  • C:\Program Files (x86)\MySQL\MySQL Connector Net 6.8.3\Assemblies\v4.5\MySql.Data.Entity.EF6.dll
  • C:\Program Files (x86)\MySQL\MySQL Connector Net6.8.3\Assemblies\v4.5\MySql.Web.dll

Så ændrede jeg EntityFramework-delen i webkonfigurationen til :

<entityFramework codeConfigurationType="MySql.Data.Entity.MySqlEFConfiguration, MySql.Data.Entity.EF6">
    <defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
    <providers>
      <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" /> 
    </providers>
  </entityFramework>

Glem ikke at GENBYGGE og du burde være i stand til at oprette en entity framework 6-model med MySQL.

VIGTIG

Sørg for, at du har installeret MySQL til Visual Studio 1.1.3 og MySQL-stik .net 6.8.3



  1. Sådan tilføjes et logo til en formularhoved i Microsoft Access

  2. Bedre at bruge markøradapter eller array-adapter

  3. Hvorfor er en UDF så meget langsommere end en underforespørgsel?

  4. Returnere en forespørgsel fra en funktion?