EF 마이그레이션이 활성화되어 있고 azure에서 실행중인 기존 데이터베이스를 업데이트하려고합니다. 나는 응용 프로그램을 실행할 때 나는 다음과 같은 예외가 얻을 : 'System.InvalidOperationException' EntityFramework.dll에서 발생했지만 사용자 코드에서 처리되지 않은 유형의EF 마이그레이션이 데이터베이스를 자동으로 업데이트하지 않습니다.
예외를
추가 정보 : 모델은 백업 데이터베이스가 작성된 후 'MyContext'컨텍스트에 이 변경되었습니다. 코드 첫 번째 마이그레이션을 사용하여 데이터베이스를 업데이트하는 것을 고려하십시오 (http://go.microsoft.com/fwlink/?LinkId=238269).
그러나 마이그레이션을 사용할 수 있습니다.
Database.SetInitializer(new MigrateDatabaseToLatestVersion<MyContext, Configuration>());
그리고
internal sealed class Configuration : DbMigrationsConfiguration<MyContext>
{
public Configuration()
{
AutomaticMigrationsEnabled = false;//have also tried true
}
}
이 최신 예상대로 모든 것이 자동으로 작동하고 내가 초기화 코드를 변경하지 않은 커밋까지 (단 새로운 마이그레이션을 추가).
데이터베이스를 다운로드하고 앱을 실행하면 동일한 결과가 나타납니다. 그러나 수동으로 실행하면 Update-Database
모든 것이 예상대로 작동합니다.
Azure에서 업데이트 데이터베이스를 실행할 수 없기 때문에이 코드를 실행하는 방법이 있습니까?
'AutomaticMigrationsEnabled = true'? – Dennis
나는 그것을 시도했다. 그것은 설정이 마이 그 레이션 파일없이 자동적으로 업데이트하는 것임을 확신한다. –
틀린거야 ...'AutomaticMigrationsEnabled'는 컨텍스트 초기화 또는 수동으로'Update 데이터베이스. 물론 사용자 계정에 데이터베이스 스키마를 업데이트 할 수있는 충분한 권한이있는 경우 자동 마이그레이션을 적용 할 수 있습니다. * AutomaticMigrationsEnabled = true로 정확히 * 작동하지 않는 것은 무엇입니까? – Dennis