2

MySql Connector/Netが正しく機能していません。バグに取り組んでいるチームはたった3人で、複雑な問題を解決していません。2009年以降、まだ未解決の問題があります。複雑な状況で機能するように、コネクタをカスタマイズしたいと思います。プロジェクトで、自分のプロジェクトの代わりにカスタマイズされたバージョンを使用するにはどうすればよいですか?

4

2 に答える 2

4

ステップ 1) ダウンロード

Oracle の mysql コネクタ / ネットのバージョンをカスタマイズするには、ソース コードをhttp://dev.mysql.com/downloads/connector/net/からダウンロードする必要があります。

ステップ 2) 開く

次に、ダウンロードしたソース ファイルを解凍する必要があります。コネクタの核心は 2 つのプロジェクトMySql.DataMySql.Data.Entity( mysql プロバイダには何がありますか? ) にあります。

ステップ 3) コネクタを編集する

複雑な状況を修正するために、必要なクラスを編集してください。

ステップ 4) 署名を削除する

この手順により、編集内容の再配布が望ましくなくなります。必要に応じて署名して変更を加えることができますが、ローカル展開では不要です。

  • の内部で、次MySql.Data.EntityAssemblyInfo.cs行をコメント アウトします。

    //[assembly: AssemblyKeyName("ConnectorNet")]
    

  • の内部で次MySql.DataAssemblyInfo.cs変更を行います。

    //[assembly: AssemblyKeyName("ConnectorNet")]
    [assembly: InternalsVisibleTo("MySql.Data.Entity")]
    

    ステップ 5) 順番にコンパイルしてビルドする

    MySql.Data 最初にビルドします。ビルドしたら、 を開きMySql.Data.Entityます。が見つからないという警告が表示されますMySql.Data。新しくビルドされたフォルダーMySql.Data内への参照を追加します。bin/DebugとしてビルドMySql.Data.EntityReleaseます。

    ステップ 6) ファイルを移動する

    bin/Releaseフォルダ内にはとのMySql.Data.Entity両方が必要です。それぞれを取得し、プロジェクトのフォルダー内の対応するものを上書きします。MySql.DataMySql.Data.Entitypackage

    ステップ 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)そうする

    カスタマイズされたコネクタをお楽しみください。

  • 于 2012-10-17T23:03:42.020 に答える