Purtroppo l’integrazione tra le varie versioni del NET Connector di MYSQL e Asp.NET non sono prive di problematiche, dettate sopratutto dalle versioni del Framework non supportate in tutte quelle del Connector.
Può capitare quindi che in produzione non venga trovato il Data Provider di MySQL anche se si è installato oppure inserito come reference locale nella directory \bin del progetto.
Per risolvere questa problematica si dovrebbe modificare il file machine.config ma spesso questo non è possibile (per esempio su hosting shared).
La soluzione quindi è quella di forzare il Provider direttamente dal web.config in questo modo:
<system.data>
<DbProviderFactories>
<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.4.3.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d” />
</DbProviderFactories>
</system.data>
Ricordatevi di sostituire la stringa Version con il numero della vostra versione del provider.