私はDbContext
に関連付けられたいくつかのモデルを持っています。 SaveChanges
を保存するモデルに基づいて別の処理を行うにはどうすればよいですか?エンティティフレームワークDbContext各モデルのSaveChangesをオーバーライド
例えば、Document
とParagraph
という2つのモデルがあるとします。 Document
が追加されたときにディレクトリが作成され、Paragraph
が追加されたときにファイルが作成されるように、SaveChanges
を無効にするにはどうすればよいですか。
ここまでこれを実行しようとしています。
public int override SaveChanges()
{
ChangeTracker.DetectChanges();
var context = ((IObjectContextAdapter)this).ObjectContext;
var stateEntries = context.ObjectStateManager.GetObjectStateEntries(
EntityState.Added
| EntityState.Modified
| EntityState.Deleted
).ToList();
foreach (var entry in stateEntries)
{
if (!entry.IsRelationship)
{
switch (entry.State)
{
case EntityState.Added:
break;
case EntityState.Modified:
break;
case EntityState.Deleted:
break;
}
}
}
return base.SaveChanges();
}