8

Visual Studio で EF6 を使用して MYSQL データベースに接続しようとしていますが、後で SQL を使用していましたが、その後正常に動作し、Mysql に移行してから、このような必要なコンポーネントをインストールします。

  • Visual Studio 1.1.1 の MySQL
  • MySQL コネクタ/ネット 6.8。

エラーは言う: ここに画像の説明を入力

プロジェクトは最新バージョンの Entity Framework を参照しています。ただし、このバージョンと互換性のある Entity Framework データベース プロバイダーがデータ接続用に見つかりませんでした。このアクションを実行する前に、このウィザードを終了し、互換性のあるプロバイダーをインストールして、プロジェクトを再構築してください。

このコンポーネントを再インストールするなど、可能なオンラインソリューションを試しまし たが、機能しませんでした。それ以外の場合は、このコードを自分に追加しようとしましたApp.config:

<configuration> <entityFramework> <defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" /> <providers> <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" /> <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> </providers> </entityFramework> </configuration>

しかし、それは同じ運命に直面しているか、または my からすべてのエンティティ タグをクリアするイベントに直面していapp.configます。また、次のようなエンティティの新しいバージョンをインストールしようとしました:

インストール パッケージ EntityFramework -バージョン 5.0.0

しかし、それは得ます:Install failed. Rolling back... Install-Package : Already referencing a newer version of 'EntityFramework'.

私が何をすべきかを特定するのを手伝ってくれる人はいますか?

4

5 に答える 5

15

これは、Visual Studioなどを再インストールしなくてもうまくいきました。

  • 最新の MySQL Visual Studio プラグインと MySQL コネクタ ネットをインストール
  • App.config または Web.config の entityFramework タグとそのすべての子タグを削除しました。
  • 次のコードに置き換えます。

<entityFramework> <defaultConnectionFactory type="MySql.Data.Entity.MySqlConnectionFactory, MySql.Data.Entity.EF6" /> <providers> <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.Entity.EF6" /> <provider invariantName="System.Data.SqlClient" type="System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer" /> </providers> </entityFramework>

于 2016-06-08T23:04:26.857 に答える
0

私が抱えていた同じ問題を抱えている他の人にとっては、VS2019 の Manage Nuget Packages ウィンドウが必要なパッケージを隠していたので、いくつかの悪い仮定をしました。DB をラップする .Net Framework クラス ライブラリを作成していましたが、8.20.0 の Nuget パッケージの名前は 6.xx とは異なり、MySql.Data と MySql.Data.EntityFramework が必要でした。2 番目のものには、MySql.Data.EntityFrameworkCore という名前の .Net Core 用のバージョンがあります。残念ながら、より良いエラー報告はありません。

于 2020-06-05T20:30:15.530 に答える
0

いくつかのソリューションをマージして問題を解決します:)次の手順を使用します。

  1. 最新の MySQL Visual Studio プラグインと MySQL コネクタ ネットをインストール
  2. App.config または Web.config の entityFramework タグとそのすべての子タグを削除しました。
  3. 次のコードに置き換えます。
<entityFramework>
    <providers>
       <provider invariantName="MySql.Data.MySqlClient" type="MySql.Data.MySqlClient.MySqlProviderServices, MySql.Data.EntityFramework" />
    </providers>
</entityFramework>
于 2020-11-01T17:02:07.567 に答える