2016-11-23 2 views
1

두 개의 ASP.NET MVC5 프로젝트가 있으며 동일한 데이터베이스에 연결하려고합니다. 모델과 DbContext을 포함하는 클래스 라이브러리를 만들었습니다.Entity Framework를 사용하는 클래스 라이브러리 DbContext

첫 번째 응용 프로그램이 제대로 연결,하지만 두 번째를 실행하면 오류가 말한다 얻을 :

파일 'C 첨부 할 수 없습니다 : \ 사용자 \ saibi 문서 프로젝트 \ 비주얼 스튜디오 2015 \ \ \ MonPFE \ MonPFEContext-20161121115318 '

PS'데이터베이스와 'MonPFE.Frontend \ App_Data \ MonPFEContext-20161121115318.mdf : 나는 각 프로젝트에 web.config 있습니다.

+1

후자의 프로젝트가 이전의 데이터베이스 대신 데이터베이스 대신 로컬 데이터베이스를 사용하는 것으로 보입니다. 나는 당신이 동일한 데이터베이스를 가리키는 데이터베이스 연결 문자열을 업데이 트하려는 믿습니다. – Win

답변

2

각 Web.config에서 동일한 연결 문자열을 사용하고 동일한 데이터베이스를 가리키는 지 확인하십시오. AttachDbFilename의 상대 경로는 다른 디렉토리를 가리 킵니다.

<connectionStrings> 
    <add name="MonPFEContext" connectionString=".\SQLExpress;AttachDbFilename=|DataDirectory|MonPFEContext.mdf; Database=MonPFEContext;Trusted_Connection=Yes;" providerName="System.Data.SqlClient"/> 
    </connectionStrings> 

|DataDirectory|는 일반적으로 각 웹 프로젝트에서 App_Data 폴더 될 것입니다 : 내가 당신을 걸거야

같은 식으로 연결 문자열이 있습니다. 하나의 웹 응용 프로그램에는 데이터베이스 파일이 있지만 다른 하나의 웹 응용 프로그램에는 존재하지 않습니다. AttachDbFilename을 업데이트하여 전체 파일 경로를 가리 키거나 동일한 파일에 대한 상대 경로를 사용하십시오.

+0

데이터베이스 경로에주의를 기울이지 않았습니다. 감사합니다. @akatakritos 이제 작동합니다. –