我有一个问题,我想覆盖 SaveChanges(),因为我需要检查一些保存到数据库的值并在保存之前更改它们。
我知道我可以SaveChanges()
覆盖DBContext
:
var changeSet = ChangeTracker.Entries<Page>();
if (changeSet != null)
{
foreach (var entry in changeSet)
{
switch (entry.State)
{
case System.Data.EntityState.Added:
if (((Page)entry.Entity).Parent_PageID == -1)
((Page)entry.Entity).Parent_PageID = null;
break;
}
}
}
但如果我需要在多个模型上执行此操作,这将很快变得混乱。
每个模型我如何做到这一点?