2013-12-11 2 views
2

우리는 Code First 마이그레이션을 사용하고 Application_Start 이벤트에서 DBMigrator.Update()를 사용하여 적용합니다. 최근 새 마이그레이션을 배포 할 때 Application_Start에서 다음 예외가 발생했습니다.코드 첫 번째 마이그레이션에서 트랜잭션을 사용합니까?

PK_dbo._ MigrationHistory ' 중복 키를 'dbo 개체에 삽입 할 수 없습니다. _MigrationHistory '입니다. 중복 키 값은 (201312020928218_ModifyReport)

이 제안하는 1) 위해 Application_Start 번 이상 실행 2) 코드 첫 번째 마이그레이션을 여러 번 시도되고 같은 이동을 방지하기 위해 트랜잭션을 사용하지 마십시오. 그렇다면 마이그레이션에서 마이그레이션을 완전히 제거하고 대신 배포의 일부로 포함 시키십시오.

답변

0

코드 첫 번째 마이그레이션은 트랜잭션을 사용하지 않습니다. 적어도 EF6에서는 마이그레이션을 사용하도록 마이그레이션을 사용자 지정할 수 있다고 생각합니다.

나는 지금 비슷한 문제로 나 자신과 겨루고있다. 그 외에도 앱의 일부가 아닌 배포의 일부로 업데이트를 넣을 것입니다.

관련 문제