在工程项目中,我们经常需要这样的设计,对于每一个数据记录创建人和创建时间以及修改人和修改时间。这些数据应该被代码自动实现,并且对客户隐藏。因此我们需要在DbContext中复写保存方法。
public override int SaveChanges(bool acceptAllChangesOnSuccess)
{
OnBeforeSaving();
return base.SaveChanges(acceptAllChangesOnSuccess);
}
public override Task<int> SaveChangesAsync(bool acceptAllChangesOnSuccess, CancellationToken cancellationToken = default(CancellationToken))
{
OnBeforeSaving();
return base.SaveChangesAsync(acceptAllChangesOnSuccess, cancellationToken);
}
private void OnBeforeSaving()
{