MySql Connector/Netが正しく機能していません。バグに取り組んでいるチームはたった3人で、複雑な問題を解決していません。2009年以降、まだ未解決の問題があります。複雑な状況で機能するように、コネクタをカスタマイズしたいと思います。プロジェクトで、自分のプロジェクトの代わりにカスタマイズされたバージョンを使用するにはどうすればよいですか?
2 に答える
ステップ 1) ダウンロード
Oracle の mysql コネクタ / ネットのバージョンをカスタマイズするには、ソース コードをhttp://dev.mysql.com/downloads/connector/net/からダウンロードする必要があります。
ステップ 2) 開く
次に、ダウンロードしたソース ファイルを解凍する必要があります。コネクタの核心は 2 つのプロジェクトMySql.Data
とMySql.Data.Entity
( mysql プロバイダには何がありますか? ) にあります。
ステップ 3) コネクタを編集する
複雑な状況を修正するために、必要なクラスを編集してください。
ステップ 4) 署名を削除する
この手順により、編集内容の再配布が望ましくなくなります。必要に応じて署名して変更を加えることができますが、ローカル展開では不要です。
MySql.Data.Entity
のAssemblyInfo.cs
行をコメント アウトします。
//[assembly: AssemblyKeyName("ConnectorNet")]
MySql.Data
のAssemblyInfo.cs
変更を行います。
//[assembly: AssemblyKeyName("ConnectorNet")]
[assembly: InternalsVisibleTo("MySql.Data.Entity")]
ステップ 5) 順番にコンパイルしてビルドする
MySql.Data
最初にビルドします。ビルドしたら、 を開きMySql.Data.Entity
ます。が見つからないという警告が表示されますMySql.Data
。新しくビルドされたフォルダーMySql.Data
内への参照を追加します。bin/Debug
としてビルドMySql.Data.Entity
しRelease
ます。
ステップ 6) ファイルを移動する
のbin/Release
フォルダ内にはとのMySql.Data.Entity
両方が必要です。それぞれを取得し、プロジェクトのフォルダー内の対応するものを上書きします。MySql.Data
MySql.Data.Entity
package
ステップ 7) プロジェクトの参照を更新する
プロジェクト内で、参照領域に移動します。MySql.Data
と の両方を削除しMySql.Data.Entity
ます。を右クリックしReferences
、 をクリックAdd Reference
してタブを選択Browse
し、パッケージ フォルダーに移動して、手順 6 で配置したと の両方MySql.Data
を追加します。MySql.Data.Entity
ステップ 8) 変更web.config
MySql.Data
の中にいくつかの言及がありますweb.config
。それらのそれぞれには、PublicKeyToken=c5687fc88969c44d
(それらすべてから)削除する必要があるものがあります。
ステップ9)そうする
カスタマイズされたコネクタをお楽しみください。