EF5 までは、SQL Server 2012 に接続するために、次のような接続文字列を指定するだけで済みました。
Data Source=.\SqlExpress;Initial Catalog=MyDatabase;Integrated security=True;MultipleActiveResultSets=True
このメソッドは EF6 では機能せず、例外が発生します
'System.Data.Odbc' ADO.NET プロバイダーの Entity Framework プロバイダーが見つかりません。プロバイダーがアプリケーション構成ファイルの「entityFramework」セクションに登録されていることを確認してください
私はapp.config
ファイルをまったく使用していません。上記の接続文字列を MyContext コンストラクターに渡しています。System.Data.SqlClient を使用せずに、Odbc プロバイダーを使用しようとしているのはなぜですか?
EF6 コード ファーストで SQL Server に接続するには、何をする必要がありますか? EntityFramework.dll と EntityFramework.SqlServer.dll の両方が Application フォルダーにあることを確認しました。WPFプロジェクトにEF6 nugetパッケージv6.0.0.1を追加しましたが、EFライブラリを直接使用せず、自動的に作成されたApp.Configファイル(nugetによって)がアプリケーション(デバッグ)フォルダーにコピーされていることを確認します-まだありません成功。
また、コードで手動でプロバイダーを設定しようとしました:
public class OeeCoachConfiguration : DbConfiguration
{
public OeeCoachConfiguration()
{
SetProviderServices("System.Data.SqlClient",
System.Data.Entity.SqlServer.SqlProviderServices.Instance);
}
}
まだ成功していません。私のプロジェクトの構造は次のとおりです(簡略化):
WPF プロジェクト - EF への参照がありません (EF 参照の追加も試みました)
ViewModel クラス ライブラリ - EF への参照がありません
モデル クラス ライブラリ - EF ライブラリ (両方の dll) への参照があります。
データ クラス ライブラリ - UI ライブラリ (両方の dll) への参照があります。
私は CodeFirst アプローチを使用していますが、このセットアップは EF5 で問題なく動作します。どんな助けでも大歓迎です。