Note that there are some explanatory texts on larger screens.

plurals
  1. POHow do I set the absolute path for a assembly containing Database connector? MySQL Connector 6.4.3 with Entity Framework 4.1
    primarykey
    data
    text
    <p>Reason why: <a href="http://bugs.mysql.com/bug.php?id=61933" rel="nofollow">http://bugs.mysql.com/bug.php?id=61933</a></p> <p>I recompiled the connector from source, incremented tit a version to 6.4.3.1, but now this (possibly) trivial question blocks me.</p> <p>How do I set the full provider name in the connection string in app.config? I have the official 6.4.3 connector installed.</p> <p>The error I get is when I add a new entity data model, and select from an existing database. This I traced to the above linked (silly) bug.</p> <p>I couldn't find a better title for this question.</p> <hr> <h2>Microsoft Visual Studio</h2> <p>An error occurred while connecting to the database. The database might be unavailable. An exception of type 'System.Data.ProviderIncompatibleException' occurred. The error message is: 'The provider did not return a ProviderManifestToken string.</p> <h2>The inner exception caught was of type 'System.FormatException', with this error message: 'Input string was not in a correct format.'.'.</h2> <h2>OK</h2> <hr> <h2>Solution</h2> <ol> <li><p>Download MySQL Connector/6.4.3 sources, and extract it.</p></li> <li><p>In the MySql.Data.Entity project, replace...:</p></li> <li><p>(ProviderServices.cs:188) With: double version = double.Parse(connection.ServerVersion.Substring(0, 3), System.Globalization.CultureInfo.InvariantCulture);</p></li> <li><p>(ProviderManifest.cs:73) With: double version = double.Parse(manifestToken, System.Globalization.CultureInfo.InvariantCulture);</p></li> <li><p>Create a new sign key and name it ConnectorNet (same name as in the assemblyinfo.cs)</p></li> <li><p>Add .1 to the AssemblyVersion in AssemblyInfo.cs in the MySql.Data project, this 1 file is shared with the rest: [assembly: AssemblyVersion("6.4.3.1")]</p></li> <li><p>Put Release as target configuration, you can also disable the .Tests projects from being built.</p></li> <li><p>As admin, install them with gacutil. <strong>Here you also get the public key token.</strong></p></li> <li><p>Locate Machine.config note it is important to know what .NET fx you compiled the project(s) to use.</p></li> <li><p>Search for DbProviderFactories, and comment out the existing MySQL Data Provider, copy it and replace in the duplicate entry, by adding the .1 in version and the public key token.</p></li> </ol> <pre> &lt;!-- 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" / --> &lt;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.1, Culture=neutral, PublicKeyToken=XXXXXXXXXXXXXXX" /> </pre>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload