データベース内の多くのテーブルには、"DateCreated" および "DateModified" 列が必要です。SaveChanges()が呼び出されるたびにこれらの列を更新したいと考えています。
すべてのモデル オブジェクトはクラスから継承してAbstractModel、この種の動作を可能にします。クラスは次のようになります。
public abstract class AbstractModel {
public virtual void UpdateDates() { }
}
次に、保持する必要があるフィールドを持つ子UpdateDates()クラスをオーバーライドする予定です。DateCreatedDateModified
DbContextこれを使用するには、が追跡しているすべてのエンティティのリストを取得し、オブジェクトがまたはUpdateDates()であるとマークされている場合はそれらを呼び出すことができる必要があります。AddedModified
DbContextこの情報が保存されている場所にアクセスできないようです。dbContext.Entry(object).State単一のエンティティのを取得することはできますEntityStateが、追跡されたすべてのエンティティのリストを取得する方法がわかりません。
どうすればいいですか?