我正在使用实体框架,我需要知道某个表的哪个字段已经被修改,所以我知道这个代码
IEnumerable<ObjectStateEntry> changes = this.ObjectStateManager.GetObjectStateEntries(EntityState.Added | EntityState.Deleted | EntityState.Modified).ToList();
foreach (ObjectStateEntry stateEntryEntity in changes)
{
if (stateEntryEntity.Entity != null)
{
var stateEntry = this.ObjectStateManager.GetObjectStateEntry(entry.Entity);
IEnumerable<string> modifiedProperties = stateEntry.GetModifiedProperties();
}
}
问题是,不是只获取更改的字段,而是获取修改对象的所有字段。
我知道为什么会有这种奇怪的行为吗?
谢谢