2

我正在使用实体框架,我需要知道表的哪个字段已被修改,所以我写了这段代码

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(); 
            }
        }

问题是我得到了修改对象的所有字段,而不是只获取更改的字段。

知道为什么我有这种奇怪的行为吗?

谢谢

4

0 回答 0