Uso le migrazioni EF e ho una tabella con molti dati. Devo cambiare MaxLength di una colonna di cemento (non aveva vincoli di lunghezza).
ALTER TABLE MyDb ALTER COLUMN [MyColumn] [nvarchar](2) NULL
E questo comando fallisce con l'eccezione TimeOut. Ho provato a installare CommandTimeout su un costruttore di nDbContext senza fortuna.
Esiste un modo per disabilitare o impostare il timeout per i comandi EF di Package Manager Console?
Ho trovato la soluzione da solo.
Dal momento che EF5 è disponibile una nuova proprietà CommandTimeout disponibile da DbMigrationsConfiguration
internal sealed class MyMigrationConfiguration : DbMigrationsConfiguration<MyDbContext>
{
public Configuration()
{
CommandTimeout = 10000; // migration timeout
}
}
In alternativa, codifica il cambiamento usando
Update-Database -script
È quindi possibile prendere lo script ed eseguirlo utilizzando SQL Management Studio rispetto al database.