我正在使用实体框架,我需要知道表的哪个字段已被修改,所以我写了这段代码
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();
}
}
问题是我得到了修改对象的所有字段,而不是只获取更改的字段。
知道为什么我有这种奇怪的行为吗?
谢谢