1 回答
TA贡献1864条经验 获得超6个赞
顺其自然,我在发布问题 5 分钟后找到了解决方案。对于需要这种功能的其他任何人,该属性[System.Diagnostics.DebuggerStepThrough]就是您要寻找的,因此我发布的方法变为:
[System.Diagnostics.DebuggerStepThrough]
public override int SaveChanges()
{
var entities = ChangeTracker.Entries().Where(entry => entry.Entity is ITrackingEntities);
foreach (var entityEntry in entities)
{
if (entityEntry.State == EntityState.Added)
{
((ITrackingEntities) entityEntry.Entity).CreatedBy = _tokenService.LoginUserId;
((ITrackingEntities) entityEntry.Entity).CreatedDateUtc = DateTime.UtcNow;
}
((ITrackingEntities) entityEntry.Entity).UpdatedBy = _tokenService.LoginUserId;
((ITrackingEntities) entityEntry.Entity).UpdatedDateUtc = DateTime.UtcNow;
}
return base.SaveChanges();
}
这会将异常“冒泡”给调用者,因此您可以更轻松地调试问题。但是,我会谨慎使用它,因为该方法现在将报告自定义覆盖之外的错误。
- 1 回答
- 0 关注
- 153 浏览
添加回答
举报
