.NET Framework 4.6.1でEntityFramework 6を実行しているDALをプロジェクトとして取得しました。他の.NET Frameworkプロジェクトのソリューションでうまく動作します。今度は、ASP.NET Core WebApi(.NET Framework 4.6.1を使用)を参照している同じDALプロジェクトを使用しますが、動作しません。例外:参照先の.NET Frameworkプロジェクトでappsettings.jsonから設定を取得する方法
アプリケーション設定ファイルに「MyEntities」という名前の接続文字列が見つかりませんでした。
.NET Coreプロジェクトはweb.configファイルを持たないため、EF6 Coreプロジェクトのappsettings.jsonから参照されているDALプロジェクトに設定を渡すにはどうすればよいですか?
私は、.NETコアプロジェクト(例えばhttps://docs.microsoft.com/en-us/aspnet/core/data/entity-framework-6など)の内部でEF6を使用するいくつかの例を見つけましたが、それは私を助けません。 dbcontextがDALプロジェクトの内部に作成されているからです。
appsettings.json
"ConnectionStrings": {
"MyEntities": "<my connectionString>"
},
project.json
"dependencies": {
"EntityFramework": "6.1.3",
...
},
...
"frameworks": {
"net461": {
"dependencies": {
"DAL": {
"target": "project"
}
},
"imports": "dnxcore50"
}
},
私はこれを私のコントローラにどのように入れるのかは分かりません。 'Config'をどのように初期化すればよいのですか?これをDALプロジェクトに渡す方法は? –
私は接続文字列をプロジェクトに渡すために使用できる[answer](http://stackoverflow.com/a/40902384)を見つけました。しかし、それは私のための解決策ではありません.DALは他のプロジェクトで使用されており、私はそれらからの呼び出しを処理する方法を変更することはできません。 私は私のappsettings.jsonを利用できるようにすることを願っています。ソリューションのネットプロジェクト。 –
あなたのDALプロジェクトが静的なプロパティまたはコンストラクタのパラメータとして接続文字列を受け入れるようにし、DALプロジェクトを使用するプロジェクトから接続文字列を渡します。 – Sriram