EF记录数据变更方法
目录
在使用SQLServer时,通常情况下使用SQLServer自带管理器可以查看到数据变更的记录。如果在程序用需要更灵活的记录这些信息,则可以通过EF的ObjectStateManager属性的相关方法实现。
ObjectStateManager.GetObjectStateEntries 方法
返回具有给定状态的对象或关系的 ObjectStateEntry 对象的集合。
命名空间: System.Data.Objects
程序集: System.Data.Entity(在 System.Data.Entity.dll 中)
语法:
|
|
参数:
state 类型:System.Data.EntityState
用于筛选返回的 ObjectStateEntry 对象的 EntityState。
返回值:
类型:System.Collections.Generic.IEnumerable
具有给定 EntityState 的 ObjectStateEntry 对象的集合。
备注:
EntityState 是一个位字段,因此,通过对多个 EntityState 值执行按位或操作,在一次调用中即可检索多个状态的状态项。
例如我们需要获取修改过的记录,则
|
|
获取添加或删除的记录
|
|
如果要记录某一个表的某一个字段的变更情况,则需要使用GetModifiedProperties方法:
|
|