MySQLデータベースへの接続エラー「Unable to find the requested.Net Framework Data Provider」
6756 ワード
Registering DbProviderFactories
Each .NET Framework data provider that supports a factory-based class registers configuration information in the DbProviderFactories section of the machine.config file on the local computer. The following configuration file fragment shows the syntax and format for System.Data.SqlClient .
<system.data>
<DbProviderFactories>
<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"
/>
</DbProviderFactories>
</system.data>
The invariant attribute identifies the underlying data provider. This three-part naming syntax is also used when creating a new factory and for identifying the provider in an application configuration file so that the provider name, along with its associated connection string, can be retrieved at run time.
MySQLコネクタ/純6.7.4とVisual Studio 1.0.2 MySQLをダウンロードし、これらの命令でテストします.
既存のMySQLデータベースへの接続を作成します.
コンソールアプリケーションを作成します.
迷惑をかける.ネットワークエンティティデータモデルは、既存のデータベースから接続されています.
コード生成項EF 5を追加する.x DbContextジェネレータ、代わりました.ttファイル.
いくつかのコードを作成し、データベースからレコードを取得します.
アプリケーションを実行すると、この例外が得られました.
ConfigurationErrorsException:登録が見つかりません.純フレームワークデータプロバイダ.
次に、
MySql.Data
とMySql.Data.Entity
6.7.4.0のライブラリバージョンを参照します.NET 4.5プロジェクト.アプリケーションを実行すると、異なる例外が得られます.FileLoadException:ファイルや組立てのMySqlをロードできません.データ、Version=6.6.5.0 c 5687 fc 88969 c 44 d文化=中立、削除不可!この問題を解決する方法を教えてください」またはその依存項目を教えてください.議会にあるリスト定義は、アセンブリリファレンスに一致しません.(HRESULT例外:0 x 80131040から)
バージョン番号に注意してください.これはMySQLコネクタではありません.私がインストールしたバージョンです.
どうやって正常に動作しますか?
コツは次のとおりです.
MySql.Data
ライブラリとMySql.Data.Entity
ライブラリ(6.7.4.0正しいバージョン.NET 4.5、私の例)を参照する項目を追加します. 編集
machine.config
とあなたのエディタは管理者として実行され、表示されたすべてのMySQLバージョン6.6.5.0
が6.7.4.0
を通過します. 第2のステップでは、各フレームバージョン(3.0,3.5,4.0)および構造(32ビット,64ビット)のために複数の
machine.config
ファイルがあることに注意してください.さらに注意しなければならないのはmachine.config
ファイルです.NET 4.5です.NET 4.0フォルダ.machine.config
のファイルを見つけることができます.C:\Windows\Microsoft.NETFramework構成
および:
C:\Windows\Microsoft.NETFramework 64構成
MySQLへの参照
machine.config
ファイルがない場合は、MySQLはVisual Studioがインストールされていない可能性があります.このようにするか、次のapp.config
のプロジェクトのファイルを追加します.<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.7.4.0, Culture=neutral, PublicKeyToken=c5687fc88969c44d" /> </DbProviderFactories> </system.data>