sql >> Database >  >> RDS >> Mysql

Kan geen MySQL-verbinding gebruiken voor entiteitsframework

LAATSTE BEWERKING

De bug is verholpen.

Chris' commentaar:

2015-11-07 en je kunt het nu allemaal werkend krijgen zonder bestanden te bewerken of rare dingen te doen. Gebruik het MySQL voor Windows-installatieprogramma en gebruik de Visual Studio-ondersteuning en de nieuwste Connector.Net. Zorg ervoor dat u na de installatie bijwerkt en u krijgt de laatste van elk (1.2.5 en 6.9.8). Gebruik NuGet om EntityFramework, MySql.Data en MySql.Data.Entity te installeren. Eindelijk, bouw en geniet van code-first reverse-engineering goedheid door een Ado.Net Entity Model toe te voegen.

Oorspronkelijk antwoord

Ik ontdekte dat het een bug van MySQL is.

Hier is de link met uitleg over een tijdelijke oplossing.

Op uw computer waarop VS 2013 is geïnstalleerd, VS plug-in (1.1.3 GA) en Connector/Net

Sluit alle VS-instanties voordat u de stappen uitvoert.

Ga in een Windows Verkenner-venster naar dit pad of waar u uw Connector/net-binaire bestanden ook hebt geïnstalleerd

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

Kopieer het bestand:

MySql.Data.Entity.EF6.dll

En plak het in deze map

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

Als het u vraagt ​​om het te overschrijven, doe dit dan alstublieft.

U heeft beheerdersrechten nodig om het bestand te kunnen overschrijven.

Vervolgens kunt u opnieuw proberen het script voor uw model te genereren.

Het is belangrijk dat u de 1.1.3-versie van de VS-plug-in hebt geïnstalleerd, aangezien deze tijdelijke oplossing daarvoor is.

Helaas werkt het niet voor mij, dus ik heb gedowngraded naar entiteitsframework 5 totdat ze dit hebben opgelost.

BEWERKEN

Eindelijk werkt het nu.

Ik moest de volgende 3 DLL's toevoegen:

  • 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

Daarna heb ik het EntityFramework-gedeelte in de webconfiguratie gewijzigd in:

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

Vergeet niet te OPNIEUW BOUWEN en je zou in staat moeten zijn om een ​​Entity Framework 6-model te maken met MySQL.

BELANGRIJK

Zorg ervoor dat u MySQL voor visual studio 1.1.3 . hebt geïnstalleerd en MySQL-connector .net 6.8.3



  1. SQL Server AlwaysOn (Beschikbaarheidsgroep) Architectuur en stapsgewijze installatie -4 Databasestappen toevoegen en verwijderen

  2. java - array doorgeven in oracle opgeslagen procedure

  3. Configuratiesysteem kan niet worden geïnitialiseerd

  4. SQL Server equivalent aan Oracle's CREATE OR REPLACE VIEW