1

스키마 변경이 필요한 EF6 코드 우선 환경이있는 경우 코드를 배포하기 전에 업데이트 (데이터베이스 - 스크립트)를 통해 마이그레이션을 적용 할 수 있도록 구성 할 수 있습니까?"오래된"코드로 마이그레이션 된 EF 데이터베이스에 액세스 할 수 있습니까?

난 그냥 "초기"마이 그 레이션과 응용 프로그램의 복사본을 복용, 마이 그 레이션과 DB를 구축 콘솔 응용 프로그램으로 간단한 테스트를 실행. 그런 다음 엔티티에 새 속성을 추가하여 스키마를 수정하고 "V2"마이그레이션을 추가하고 Update-Database를 실행했습니다. 이 마이그레이션 된 DB에 대해 "이전"코드를 실행하려고하면 InvalidOperationException이 발생합니다. "데이터베이스가 생성 된 이후 컨텍스트를 지원하는 모델이 변경되었습니다."

EF 코드를 사용하여 이전 버전을 실행중인 다른 서버에서 새로운 응용 프로그램 코드를 실행하려는 서버에서 연속 배달 유형 작업을 수행 할 수 있습니까?

+0

이전 코드를 수정할 수 있습니까? 그렇다면 [스키마 검사 사용 안함] (http://stackoverflow.com/questions/10623260/how-can-i-disable-model-compatibility-checking-in-entity-framework-4-3) 오래된 코드는 옵션입니다 . 추가 된 열이 nullable이거나 기본값으로 확실합니까? – tschmit007

+0

이상하게 보입니다. 이는 진행중인 배포 용이므로 코드를 배포하기 전에 스크립트 마이그레이션을 실행할 수 있으므로 이니셜 라이저를 실제로 비활성화 할 수 있습니다. 많은 감사합니다. – Darran

답변

1

이전 코드를 수정할 수 있습니까?

예 해당하는 경우 이전 코드의 disabling schema checking은 옵션입니다.

btw : 추가 된 열이 nullable이거나 기본값으로 설정되어 있습니까?

놀라운 결과를 피하기 위해 데이터 손상을 피하기 위해 스키마에 대한 읽기 전용 권한이있는 연결 문자열을 사용할 수도 있습니다.

관련 문제