【发布时间】:2012-04-24 17:35:59
【问题描述】:
我的数据库中的许多表都需要有一个“DateCreated”和“DateModified”列。我想在调用 SaveChanges() 时更新这些列。
我所有的模型对象都继承自一个类 AbstractModel 以允许这种行为。该类如下所示:
public abstract class AbstractModel {
public virtual void UpdateDates() { }
}
然后,我计划在具有需要维护的 DateCreated 和 DateModified 字段的任何子类中覆盖 UpdateDates()。
要使用它,我需要能够获取DbContext 正在跟踪的所有实体的列表,如果对象被标记为Added 或Modified,则在它们上调用UpdateDates()。
我似乎无法访问DbContext 存储此信息的任何位置。我可以通过dbContext.Entry(object).State 获取单个实体的EntityState,但我不知道如何获取所有跟踪实体的列表。
我该怎么做?
【问题讨论】:
标签: c# entity-framework