我有幾個實體包含EffectiveAsOf和ExpiredAsOf的日期時間字段。當一個實體被修改時,我想重寫SaveChanges方法,而不是隻更新現有的實體,讓代碼將原始記錄保存到數據庫,並將ExpiredAsOf datetime設置爲當前時間,並用新數據插入一條新記錄並且將EffectiveAsOf設置爲ExpiredAsOf設置爲null的當前時間。如何向SaveChanges中的objectStateEntryList中添加新記錄覆蓋
我知道,在objectStateEntryList的ObjectStateEntry項目包含CurrentValues和原始值對象,以及作爲一個實體對象。 EF使用什麼將數據寫入數據庫CurrentValues數據或實體?我如何着手創建一個新的條目?或者,我是否完全用錯誤的方式去做這件事?
我知道我可以在EF以外的實體中處理這個問題,但寧可讓EF自動檢測並處理這些實體。
預先感謝您的幫助和洞察力, 吉姆