我数据库中的许多表都需要有一个“DateCreated”和“DateModified”列。我想在SaveChanges()
调用时更新这些列。
我所有的模型对象都继承自一个类AbstractModel
以允许这种行为。该类如下所示:
public abstract class AbstractModel {
public virtual void UpdateDates() { }
}
然后,我计划在具有他们需要维护的字段的UpdateDates()
任何子类中进行覆盖。DateCreated
DateModified
要使用它,我需要能够获取DbContext
正在跟踪的所有实体的列表,并UpdateDates()
在对象被标记为 isAdded
或时调用它们Modified
。
我似乎无法访问DbContext
存储此信息的任何位置。我可以dbContext.Entry(object).State
获取EntityState
单个实体的,但我不知道如何获取所有跟踪实体的列表。
我该怎么做呢?