public static Model CreateModel(DbType type, EFDatabaseInitMode initMode = EFDatabaseInitMode.DropCreateIfChanges) { switch (type) { case DbType.MsSQL: return(new MsSqlModel(initMode)); case DbType.MySQL: return(new MySqlModel(initMode)); default: throw new ApplicationException("Undefined database type"); } }
public MsSqlModel(EFDatabaseInitMode initMode) : base("name=library-mssql") { switch (initMode) { case EFDatabaseInitMode.CreateIfNotExists: Database.SetInitializer <MsSqlModel>(new CreateDatabaseIfNotExists <MsSqlModel>()); break; case EFDatabaseInitMode.DropCreateIfChanges: Database.SetInitializer <MsSqlModel>(new DropCreateDatabaseIfModelChanges <MsSqlModel>()); break; case EFDatabaseInitMode.DropCreateAlways: Database.SetInitializer <MsSqlModel>(new DropCreateDatabaseAlways <MsSqlModel>()); break; } }