저는 Asp.Net Mvc 응용 프로그램에서 작업 중이며 만든 데이터베이스 사용자 지정 데이터베이스 이니셜 라이저 클래스를 사용하여 데이터베이스를 시드하려고합니다.마이그레이션 시드 메서드가 데이터베이스 초기 메서드의 시드 메서드를 무시합니다.
public class ApplicationDbContext : IdentityDbContext<ApplicationUser> {
public ApplicationDbContext()
: base("defaultConnection", throwIfV1Schema: false) {
}
static ApplicationDbContext() {
Database.SetInitializer(new ApplicationDbInitializer());
}
여기 내 ApplicationDbInitializer
클래스 :
그래서 여기 내 DbContext
입니다
public class ApplicationDbInitializer : DropCreateDatabaseIfModelChanges<ApplicationDbContext> {
protected override void Seed(ApplicationDbContext context) {
InitializeIdentityForEF(context);
base.Seed(context);
}
public static void InitializeIdentityForEF(ApplicationDbContext db) {
// Create Role Admin if it does not exist
// Add user admin to Role Admin if not already added
// And some more initializing stuff
}
}
참고 : 너무 Migrations
을 사용하고 있습니다.
Update-Database
명령을 사용하여 데이터베이스를 업데이트하고 시드하려고하면 (데이터베이스를 수동으로 삭제하더라도) 데이터베이스가 생성되고 있지만 시드되지는 않습니다.
내가 잘못하고 있거나 다른 방법으로 도와 주시면 고맙겠습니다.