2010-11-25 4 views
3

호스트 된 SQL Server DB가 하나 뿐이며 삭제할 수있는 권한이 없습니다. 내 도메인 클래스에서 EF create table을 만들려면 어떻게해야합니까? RecreateDatabaseIfModelChanges 및 AlwaysRecreateDatabase가 DB를 삭제하려고하면 CreateDatabaseOnlyIfNotExists가 테이블을 만들지 않습니다.EF CTP4 - 테이블을 만들지 만 드롭하지 않습니다.

들으

답변

0

CreateDatabaseOnlyIfNotExists기본 전략이다. 즉, Database.SetInitializer를 통해 설정하지 않아도됩니다. EF Code First는 데이터베이스를 검사하고 컨텍스트의 정규화 된 이름과 동일한 이름을 가진 데이터베이스를 찾지 못하면 데이터베이스를 만듭니다.

+0

DB가 이미 있지만 테이블이 없으면 CreateDatabaseOnlyIfNotExists가 예외를 throw합니다. – AGS

+0

상관 없어요. 데이터베이스가 비어 있거나 테이블로 가득차면 EF는 아무 작업도 수행하지 않고 예외 만 발생시킵니다. 앱을 실행하기 전에 데이터베이스를 수동으로 삭제해야합니다. –

+0

나는 그것을 떨어 뜨릴 권리가 없다. – AGS

관련 문제