首页 > 代码库 > 关于EF中ApplyCurrentValues和ApplyOriginalValues区别

关于EF中ApplyCurrentValues和ApplyOriginalValues区别

关于EF中ApplyCurrentValues和ApplyOriginalValues区别:两者都是编辑数据时使用。

 

//
        // 摘要:
        //     将 System.Data.Objects.ObjectStateEntry 的 System.Data.Objects.ObjectStateEntry.CurrentValues
        //     属性设置为与所提供对象的属性值相匹配。
        //
        // 参数:
        //   currentEntity:
        //     具有要应用于原始对象的属性更新的已分离对象。
        //
        // 返回结果:
        //     已更新的对象。

public TEntity ApplyCurrentValues(TEntity currentEntity)

参数currentEntity的取值方式有两种

(1)从内存中查出来的对象,编辑你需要编辑的字段,然后传入。

(2)用new 关键字创建的新对象,此处注意,创建的对象必需满足数据表约束,然后传入。

 

//
        // 摘要:
        //     将 System.Data.Objects.ObjectStateEntry 的 System.Data.Objects.ObjectStateEntry.OriginalValues
        //     属性设置为与所提供对象的属性值相匹配。
        //
        // 参数:
        //   originalEntity:
        //     具有要应用于原始对象的属性更新的已分离对象。
        //
        // 返回结果:
        //     已更新的对象。

public TEntity ApplyOriginalValues(TEntity originalEntity);

参数originalEntity的取值方式只有一种

(1)从内存中查出来的对象,编辑你需要编辑的字段,然后传入。