Can’t use a MySQL connection for entity framework 6

LATEST EDIT

The bug has been fixed.

Chris’ comment:

2015-11-07 and you can now get it all working without editing any
files or doing weird stuff. Use the MySQL for Windows installer and
include the Visual Studio support and the latest Connector.Net. Be
sure to update after installing and you will get the latest of each
(1.2.5 and 6.9.8). Use NuGet to install EntityFramework, MySql.Data,
and MySql.Data.Entity. Finally, built and enjoy code-first reverse
engineering goodness by adding an Ado.Net Entity Model.

Original answer

I found out it’s a bug from MySQL.

Here’s the link explaining a workarround.

On your machine where VS 2013 is installed, VS plugin (1.1.3 GA) and
Connector/Net

Close all VS instances before doing the steps.

On a Windows Explorer window go to this path or wherever you installed
you Connector/net binaries

C:\Program Files (x86)\MySQL\MySQL Connector Net
6.8.3\Assemblies\v4.5\

Copy the file:

MySql.Data.Entity.EF6.dll

And paste it to this folder

C:\Program Files (x86)\Microsoft Visual Studio
12.0\Common7\IDE\PrivateAssemblies

If it asks you to overwrite it please do so.

You’ll need admin rights in order to overwrite the file.

Then you can try again to generate the script for your model.

It is important that you have the 1.1.3 version of the VS plugin
installed since this workaround is for that.

Unfortunately it doesn’t work for me, so I downgraded to entity framework 5 until they fix this.

EDIT

Finaly, it works now.

I had to add the 3 following DLLs :

  • C:\Program Files (x86)\MySQL\MySQL Connector Net
    6.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 Net
    6.8.3\Assemblies\v4.5\MySql.Web.dll

Then I changed the EntityFramework part in the web config to :

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

Don’t forget to REBUILD and you should be able to create a entity framework 6 model with MySQL.

IMPORTANT

Make sure you have installed MySQL for visual studio 1.1.3 and MySQL connector .net 6.8.3

Leave a Comment