2017-03-24 2 views
0

내 응용 프로그램에 dbContext 정의가 포함 된 데이터 액세스 계층 (DAL)이 있습니다. SqlServer 데이터베이스를 사용하고 있습니다. 시작 프로젝트 이후 dbContext 어셈블리 외부에서 Entity Framework 구성

코어 ASP.NET MVC 프로젝트 ( UI)를, I는 UI 프로젝트에 DAL 프로젝트에서의 app.config 을 복사된다.

건은 UI 프로젝트 (내 구체적인 유형을 얻기 위해 의존성 주입을 사용하고 있습니다)을 DAL 프로젝트를 참조하지 않는다는 것입니다; 따라서, UI 프로젝트는 SQLSERVER 제공자를 찾을 수 없습니다, 나는 다음과 같은 오류 얻을 : 참조하여 어느 ..

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 프로젝트도 참조합니다. 그런 다음 도메인 및 DAL 프로젝트를 모두 참조하는 '컨테이너'프로젝트가 있습니다. 이것은 배선이 일어나는 곳입니다. ASP.NET MVC 프로젝트의 Startup.ConfigureServices 메소드에서이 코드를 호출합니다. –

+0

@trevorc : 더 나은 접근 방법이 있습니까? –

답변

2

는 공급자 DLL이 웹 응용 프로그램의 출력 디렉터리에 복사됩니다 확인을 또는 게시판 빌드 이벤트에 복사하여 작성하십시오.

관련 문제