Unable to find the requested .Net Framework Data Provider.

I sent in a ticket, but they are still working on it, so I thought I'd put it out before the community. I am using .NET with Mysql.data.dll (Mysql .NET Connector in the /bin directory. Still, I get this when my app tries to retrieve info:

Unable to find the requested .Net Framework Data Provider. It may not be installed.

IN my web.config:

<add assembly="MySql.Data, Version=, Culture=neutral, PublicKeyToken=C5687FC88969C44D"/></assemblies></compilation>

<add name="incidentsConnectionString" connectionString="Server=mysql2.g********.com;User ID=dburrou_incident;Port=3306;password=*****;database=dburrou_incident;persist security info=True" providerName="MySql.Data.MySqlClient"/>

I askterisk'ed my password out, but you get the idea. The service guys had me cut out 'persist security info - True' and the providerName. No change so far.

Is this DLL not supported, or am I using the wrong version? Any Ideas?


My providerName seems ok, no typo there.

Thanks. Anybody used .NET Connector before? Maybe comparison of a working app with my setup would be helpful.
My providerName seems ok, no typo there.

Thanks. Anybody used .NET Connector before? Maybe comparison of a working app with my setup would be helpful.

Yes some have used the MySQL connectors without any issue.

I can't give the url's or web.config(or honestly remember exactly what sites they were) but if a user comes and see they are more than welcome to provide!
I searched around some more and found:

"Glad you got it working and sorry I didn't catch this thread before. If the hoster runs your app under full trust, then you never need to install the connector in the GAC. It is enough to put the connector in your apps bin folder. However, most hosters do not run as full trust. Most run as medium trust. The connector cannot run under stock medium trust because under that trust level socket communications are not allowed. Some hosters (such as GoDaddy) have modified their stock medium trust to include socket communications. This allows the connector to function. "

Is it a trust issue?


Reggie recommended adding the code below either to web.config or machine.config. I don't have access to machine.config that I know of.

<add name="MySQL Data Provider" invariant="MySql.Data.MySqlClient" description=".Net Framework Data Provider for MySQL" type="MySql.Data.MySqlClient.MySqlClientFactory, MySql.Data, Version=, Culture=neutral, PublicKeyToken=C5687FC88969C44D" />
This solved the registration problem but brought a new error:

"Failed to find or load the registered .Net Framework Data Provider"

On that error message, one entry at:

"Solved! The problem was my hosting company had a stray character in their machine.config file"

Could Jodohost have a machine.config problem?8o
no we don't have a config issue :D

However you can run this DLL without being in the GAC, we used to put a version in the GAC and some users wanted other versions and used their own in their /bin by configuring it in their web.config as you have just done.
I will go load it in the GAC and see if it eases the pains you are having in getting this going, if someone else wants another version they can deal with the web.config issues in specifying their own. :)