新しいMySqlデータベース接続を追加しようとしています。 MySql.Dataの私のバージョンは6.9.9.0で、私のEFModelプロジェクトのapp.configとプロジェクトのNuget Package Managerで参照されています。新しいデータベース接続を追加しようとすると、Eroor "ファイルまたはアセンブリMySql.dataをロードできませんでした"
私はそれをテストするとき、私のサーバーとの接続が十分に確立されているが、私は、「OK」をクリックしたときにエラーが表示されます。
"Could not load file or assembly 'MySql.data, Version=6.9.8.0, Culture=Neutral, PublicKeyToken=BigNumber' or one of his dependencies. The found definition of the assembly's manifest doesn't correspond to the reference of the assembly."
問題は、このバージョンは、私の溶液中で書いていないことですどの設定ファイルでも。ここで
は私のapp.configファイルです:
<?xml version="1.0" encoding="utf-8"?>
<configuration>
<configSections>
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 --></configSections>
<entityFramework codeConfigurationType="MySql.Data.Entity.MySqlEFConfiguration, MySql.Data.Entity.EF6">
<defaultConnectionFactory type="System.Data.Entity.Infrastructure.SqlConnectionFactory, EntityFramework" />
<providers>
<provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" />
</providers>
</entityFramework>
<connectionStrings>
<add name="UphairDbEntities" connectionString="metadata=res://*/DbModel.csdl|res://*/DbModel.ssdl|res://*/DbModel.msl;provider=MySql.Data.MySqlClient;provider connection string="server=***;user id=***;password=***;database=***"" providerName="Mysql.Data.MysqlClient" />
</connectionStrings>
<startup>
<supportedRuntime version="v4.0" sku=".NETFramework,Version=v4.5" />
</startup>
<system.data>
<DbProviderFactories>
<remove invariant="MySql.Data.MySqlClient" name="MySQL Data Provider" />
<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.9.9.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" />
</DbProviderFactories>
</system.data>
<runtime>
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly>
<assemblyIdentity name="MySql.Data" publicKeyToken="c5687fc88969c44d" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.8.3.0" newVersion="6.8.3.0" />
</dependentAssembly>
<dependentAssembly>
<assemblyIdentity name="EntityFramework" publicKeyToken="b77a5c561934e089" culture="neutral" />
<bindingRedirect oldVersion="0.0.0.0-6.0.0.0" newVersion="6.0.0.0" />
</dependentAssembly>
</assemblyBinding>
</runtime>
</configuration>
私は3日間、この上で苦労していますが、私が見つけたすべての問題がなかったので、SOまたはインターネットで任意のソリューションまたは関連する問題を見つけることができませんでした新しい接続をデータベースに追加することや、app.configに記載されていないエラーに表示されるバージョンについては私の場合です。私は本当にこれを引き起こす原因を理解していません。
助けてください! :/
、私は、さらに少ない有用なエラーを取得しています。 MySql.Data.MySqlClient.MySqlProviderServices、MySql.Data.Entity、Version = 6.10.5.0、Culture = neutral、PublicKeyToken = c5687fc88969c44d実際のエラーメッセージはありません。プロジェクト名とファイルだけです。これは、Visual Studioの最近のバージョンではかなり典型的なようです。実際に問題を診断するのに役立つものではなく、問題の症状に関連する「エラー」を与えます。私の場合は、EFでMySqlを使用して、移行するために従来のデータベースからデータを取得しています –
オンラインでさらに調査した結果、問題の原因は2つありました。(1)問題はEntity Framework 6.2 (2)MySql.Data v6.10.5および/またはMySql.Data.Entity v6.10.5を使用していたこと。両方のバージョンの変更を試した後、私は今、後者がそうであることを確立しました。 EFを6.1にダウングレードし、MySql DLLをv6.10.5(または6.10.4)にした場合、私のソフトウェアは動作しませんでした。しかし、両方のMySqlパッケージを6.9.10にダウングレードすると、EF 6.1または6.2の実用的なソリューションが得られました。 –
しかし、VSのエラーについての私の意見は立っています。私は過去1年かそこらで、何かが構築されたり展開されなかったときに出てくるエラーが問題の根本的な原因を診断するのを助けるのに役に立たない場面が数多くありました。 Googleとスタックオーバーフローのようなサイトではない場合、私はしばしば完全に海であり、手がかりは全くありません。これは、たくさんのお金を要するIDEのためには良い場所ではありません。 –