문제

스키마 및 데이터가있는 기존 DEV DB가 있습니다.Microsoft 유틸리티 (CodeFirst 클래스)를 사용하여 클래스를 작성했습니다.그런 다음 마이그레이션을 활성화했습니다.

이제 나는 -ignorechanges의 행동에 대해 놀랐습니다.초기 마이그레이션에 UP () 및 NO DOWN () 논리가 없으면 PROCD DB에 배포 할 때 발생할 때 발생합니다.

EF는 모든 마이그레이션을 무시하고 모델에서 직접 처음부터 빌드하기 만하면됩니다.

-ignoreChanges에 넣지 않으면 모든 up () 및 down () 논리가 있습니다.그러나 업데이트 데이터베이스에 이미 존재하는 이름이 같은 테이블에 대한 예외가 발생합니다.

EF 5 RC를 사용하고 있습니다.

도움이 되었습니까?

해결책

IgnoreChanges는 기존 응용 프로그램 (Dev와 Prod에서)을 갖고 마이그레이션을 사용하여 시작하려는 시나리오입니다.IgnoreChanges 초기 마이그레이션 추가 단순 기존 데이터베이스에프로덕션 데이터베이스가없는 시나리오에있는 경우 변경 사항을 무시할 수 없습니다.

귀하의 사례에 대한 직선적 인 옵션은 기존 데이터베이스에서 엔티티를 작성하는 것입니다. Up 메소드 (각각 Down 메서드)의 모든 엔티티에 대한 테이블 작성이 필요하기 때문에 해당 엔티티에서 마이그레이션에 의해 작성된 다른 데이터베이스에서 계속 작업합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top