2017-03-24 4 views
0

私のアプリケーションには、のdbContext定義を含むデータアクセスレイヤー(DAL)があります。私はSqlServerデータベースを使用しています。dbContextアセンブリの外部でEntity Frameworkを構成する

スタートアッププロジェクトがASP.NETコアMVCプロジェクト(UI)であるので、私は、UIプロジェクトにDALプロジェクトからApp.configファイルをコピー。

事がUIプロジェクトは(私は私の具体的な種類を取得するために、依存性注入を使用しています)DALプロジェクトを参照していないということです。参照することにより、どちらか..プロバイダDLLは、あなたのWebアプリケーションの出力ディレクトリにコピーされることを確認し

The Entity Framework provider type 'System.Data.Entity.SqlServer.SqlProviderServices, EntityFramework.SqlServer' registered in the application config file for the ADO.NET provider with invariant name 'System.Data.SqlClient' could not be loaded. Make sure that the assembly-qualified name is used and that the assembly is available to the running application.

+0

疎結合のあなたの欲求にあなたのコメントを見ました。私はこの道を何度も降りてきました。 DALレイヤーからUIレイヤーにデータを渡す方法の例を教えてください。 – trevorc

+0

UIプロジェクトはDomainプロジェクトを参照し、DALプロジェクトはDomainプロジェクトも参照します。次に、私はDomainプロジェクトとDALプロジェクトの両方を参照する 'コンテナ'プロジェクトを持っています。これは配線が起こる場所です。 ASP.NET MVCプロジェクトのStartup.ConfigureServicesメソッドからこのコードを呼び出します。 –

+0

@trevorc:あなたはこれに対してより良いアプローチをしていますか? –

答えて

2

:ので、UIプロジェクトは、のSQLServerプロバイダを見つけることができない、と私は次のエラーを取得しますそれともポストビルドのイベントでコピーすることによって行われます。

関連する問題