Entity Framework 5를 사용하여 응용 프로그램에서 코드 우선 마이그레이션을 사용하고 있습니다. 모든 개발자는 자신이 작업 한 데이터베이스를 가지고 있습니다.코드 마이그레이션에서 초기 코드 마이그레이션 건너 뛰기
내가 실수로 비울 수 있습니다. 더 이상 테이블이 없으며 이전 기록 테이블조차도 없습니다.
따라서 PM 콘솔을 통해 update-database
을 실행하여 데이터베이스를 다시 업데이트하려고했습니다. immediatley는 테이블이 존재하지 않는다는 에러를 내 최초 코드 마이그레이션에서 만들어야한다고 전합니다.
흥미로운 점은 PM 콘솔에 어떤 마이그레이션이 적용되고 있는지, 즉 inital create 코드 마이그레이션이 포함되어 있지 않아 테이블을 전혀 만들지 않았고 나중에 마이그레이션 할 때 실패한다는 것입니다.
update-database -targetmigration:initialcreate
을 실행 해 보았습니다.이 코드는 코드 마이그레이션이 존재하지 않지만 cs 파일의 직접 복사/붙여 넣기이므로 ID가 정확해야합니다 (참고 :이 방법은 다른 마이그레이션에도 적용됩니다).
나는 또한 'Target database is already at version 0'
을주는 update-database -targetmigration:0
과 update-database -targetmigration: $InitialDatabase
을 시도했다.
나는 또한 데이터베이스를 모두 삭제하고 EF가 만들지 않았거나 시도하지 않았더라도 initialcreate 마이그레이션을 건너 뛰었습니다.
그렇다면 코드 마이그레이션에서 initalCreate 코드 마이그레이션을 실행하려면 어떻게해야합니까?
이 접근법은 논리적이고 오류가없는 것처럼 보입니다. 나는 이런 식으로 생각하지 않았습니다. 팀 시나리오의 코드 마이그레이션이 항상 훌륭하게 작동하는 것은 아닙니다. 우리는 다음 프로젝트에서이 방법을 사용할 것을 고려할 것입니다. 또한 빈 데이터베이스에 대해 제공 한 솔루션이 훌륭하게 작동했습니다. 감사!! :) – Ruudt