EF4.* から EF 5.0. そして、MiniProfiler との組み合わせです。テーブルは、システム テーブルの下の dbo._MigrationHistory に存在していました。
あなたはいくつかのことを試みます:
- システム テーブル フォルダーの下の dbo._MigrationHistory テーブルに CreatedOn (DateTime) 列を手動で追加できます。
- Configuration.AutoDetectChangesEnabled = false; を設定すると、変更の検出を停止できます。
- この行 MiniProfilerEF.Initialize() をコメント化し、EF プロファイリングを無効にします。
CreatedOn 列を追加するシード メソッドの例を次に示します。この列は、コンテキストが初期化されるたびに削除されます。シード メソッドは、コンテキストの Configuration クラスにあります。
internal sealed class Configuration : DbMigrationsConfiguration<MyContext>
{
protected override void Seed(MyContext context)
{
// This method will be called after migrating to the latest version.
// Hide error Invalid column name 'CreatedOn' from mini profiler.
context.Database.ExecuteSqlCommand(
@"IF NOT EXISTS(SELECT * FROM sys.columns WHERE object_id = OBJECT_ID('__MigrationHistory') AND name = 'CreatedOn')
ALTER TABLE dbo.__MigrationHistory ADD CreatedOn datetime NOT NULL CONSTRAINT DF___MigrationHistory_CreatedOn DEFAULT (SYSUTCDATETIME());
");
}
}