Tengo un proyecto A en visual studio 2008 en vb fmk 2.0
Luego tengo el mismo proyecto B en visual studio 2010 C#  fmk 4.0 (lo estoy migrando)
 
EL original (2008) trabaja con MySql. En su día instale 'mysql-essential-6.0.11-alpha-win32' para poder recupera el Factory de esta manera:
 
 Public Shared FactoryBBDD As DbProviderFactory = DbProviderFactories.GetFactory("MySql.Data.MySqlCl  ient")
 
En el de 2008 funciona pero en el de 2010 me salta este error:
"No se encuentra el proveedor de datos .NET Framework solicitado. Puede que no esté instalado."
 
Ha través de 'System.Data.Common.DbProviderFactories.GetFactory  Classes' obtengo los factorys instalados y en 2008 me muestra 6 pero en 2010 me muestra 5 (falta el Mysql)
 
He reinstalado el 'mysql-essential-6.0.11-alpha-win32' pero sigue el error
 
Alguien sabe?
 
------
 
 
Lo he solucionado pero de la manera menos 'limpia' . Resulta q en machine.config de fmk 2.0 tengo
<system.data>
		<DbProviderFactories>
			<add name="Odbc Data Provider" invariant="System.Data.Odbc" description=".Net Framework Data Provider for Odbc" type="System.Data.Odbc.OdbcFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
			<add name="OleDb Data Provider" invariant="System.Data.OleDb" description=".Net Framework Data Provider for OleDb" type="System.Data.OleDb.OleDbFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
			<add name="OracleClient Data Provider" invariant="System.Data.OracleClient" description=".Net Framework Data Provider for Oracle" type="System.Data.OracleClient.OracleClientFactory  , System.Data.OracleClient, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
			<add name="SqlClient Data Provider" invariant="System.Data.SqlClient" description=".Net Framework Data Provider for SqlServer" type="System.Data.SqlClient.SqlClientFactory, System.Data, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089"/>
			<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=6.3.5.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d"/>
			<add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory  , System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/></DbProviderFactories>
	</system.data>
 
PEro en machine.config de 4.0 solo tengo 
<DbProviderFactories>
			<add name="Microsoft SQL Server Compact Data Provider" invariant="System.Data.SqlServerCe.3.5" description=".NET Framework Data Provider for Microsoft SQL Server Compact" type="System.Data.SqlServerCe.SqlCeProviderFactory  , System.Data.SqlServerCe, Version=3.5.0.0, Culture=neutral, PublicKeyToken=89845dcd8080cc91"/>
 
Así que le copiado la cadena de Mysql y ya funciona
 
Lo que no me explico es pq. el 'mysql-essential-6.0.11-alpha-win32'  no es capaz de registrarlo en fmk 4.0...?? HAy q instalar algo extra?
 
GRacias 
   
 


