Cadena de conexión personalizada y código de EntityFramework primero y migraciones
Cuando creo un contexto con una cadena de conexión predeterminada (como se lee en elapp.config
) se crea la base de datos y funcionan las migraciones, básicamente todo está en orden. Mientras que cuando la cadena de conexión se crea programáticamente (usandoSqlConnectionStringBuilder
):
A
);CreateDbIfNotExists()
crea elel más nuevo Versión del modelo de base de datos, pero los mecanismos de migración sonno invocado (escenarioB
).EnA
se produce una excepción cuando deseo acceder a la base de datos, ya que, obviamente, no está allí. EnB
base de datos se crea correctamente los mecanismos de migración sonno llamado, como es el caso en la cadena de conexión estándar.
app.config: "Data Source=localhost\\SQLEXPRESS;Initial Catalog=Db13;User ID=xxx;Password=xxx
"
constructor:
sqlBuilder.DataSource = x.DbHost;
sqlBuilder.InitialCatalog = x.DbName;
sqlBuilder.UserID = x.DbUser;
sqlBuilder.Password = x.DbPassword;
inicializador:
Database.SetInitializer(
new MigrateDatabaseToLatestVersion<
MyContext,
Migrations.Configuration
>()
);
Especificaciones: Entity Framework: 5.0, DB: SQL Server Express 2008