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