Ahmed Ibrahim Ahmed Ibrahim - 5 months ago 24
SQL Question

Could not connect to MySQL through EF6 in Visual Studio 2013

I am trying to connect to MYSQL Database using EF6 in visual studio , later i was using SQL and it worked fine afterwards i shifted to Mysql then i install such this required components :


  • MySQL for Visual Studio 1.1.1

  • MySQL Connector/Net 6.8.



The error says :
enter image description here


Your project references the latest version of Entity Framework; however, an Entity Framework database provider compatible with this version could not be found for you data connection. Exit this wizard, install a compatible provider, and rebuild your project before performing this action


i tried possible online solutions e.g reinstall this components but it did not work ,
Otherwise this i tried to add such this code to my
App.config
:


<configuration>
<entityFramework>
<defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" />
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
<provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" />
</providers>
</entityFramework>
</configuration>



but it face the same destiny, or event clear all entity tags from my
app.config
.
also i tried to install later version of entity such :


Install-Package EntityFramework -Version 5.0.0


but it get :
Install failed. Rolling back...
Install-Package : Already referencing a newer version of 'EntityFramework'.


can anyone help me to identify what should i do then ?

Answer

This worked for me WITHOUT reinstalling the Visual Studio or anything what so ever.

  • installed latest MySQL visual studio plugin and MySQL connector net
  • removed the entityFramework Tag in App.config or Web.config and all its child tags.
  • replaced it with the following code:

<entityFramework> <defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" /> <providers> <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" /> <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> </providers> </entityFramework>