데이터 상호 작용을위한 프로젝트와 WebUI를위한 프로젝트라는 두 개의 별도 프로젝트가 있습니다.Entity Framework (데이터베이스 우선) 연결 문자열을 찾을 수 없습니다.
UI를 프로젝트의 루트에있는 Web.config의 다음 연결 문자열이 있습니다
<add name="MySiteEntities" connectionString="metadata=res://*/MySite.csdl|res://*/MySite.ssdl|res://*/MySite.msl;provider=System.Data.SqlClient;provider connection string="data source=tcp:**********.database.windows.net,****;initial catalog=MySite;user [email protected]**********;password=*******;MultipleActiveResultSets=True"" providerName="System.Data.EntityClient" />
EDMX (첫 번째 데이터베이스)에 의해 생성 된 dbcontext은 다음과 같습니다
public partial class MySiteEntities : DbContext
{
public MySiteEntities()
: base("name=MySiteEntities")
{
}
...
때 로컬 엔티티 프레임 워크가 연결 문자열을 찾고 데이터베이스에 성공적으로 연결하는 사이트를 실행합니다.
그러나 게시 할 때 엔티티 프레임 워크가 연결 문자열을 찾지 못하고 대신 UnintentionalCodeFirstException
을 던집니다.
내가 여기서 정확히 무엇을 잘못하고 있습니까?
게시 된 응용 프로그램이 올바른 구성 파일을 사용하고 있는지 확인 했습니까? 내 환경에서는 디버그 및 릴리스 구성 파일이 있고 로컬에서 실행하면 디버그 버전이지만 릴리스 됨 (일부는 변경됨)을 게시합니다 – Thelonias
@Ryan 설정 파일의 릴리스와 디버그 버전이 모두 같습니다. . FTP를 통해 연결하고 web.config를 확인하여이 사실을 확인했습니다. web.config는 게시 된 것과 동일한 연결 문자열을가집니다. –