ObjectContext.ApplyPropertyChanges(String, Object) 方法

定义

注意

Use ApplyCurrentValues instead

将已分离对象的属性更改应用于已附加到对象上下文的对象。

public:
 void ApplyPropertyChanges(System::String ^ entitySetName, System::Object ^ changed);
public void ApplyPropertyChanges (string entitySetName, object changed);
[System.ComponentModel.Browsable(false)]
[System.Obsolete("Use ApplyCurrentValues instead")]
public void ApplyPropertyChanges (string entitySetName, object changed);
member this.ApplyPropertyChanges : string * obj -> unit
[<System.ComponentModel.Browsable(false)>]
[<System.Obsolete("Use ApplyCurrentValues instead")>]
member this.ApplyPropertyChanges : string * obj -> unit
Public Sub ApplyPropertyChanges (entitySetName As String, changed As Object)

参数

entitySetName
String

对象所属实体集的名称。

changed
Object

其属性更新将应用于原始对象的已分离对象。

属性

例外

entitySetNamenull 或空字符串时。

- 或 -

changednull 时。

来自 entitySetNameEntitySet 与对象的 EntityKeyEntitySet 不匹配时。

- 或 -

当实体处于 ModifiedUnchanged 之外的状态时。

- 或 -

原始对象未附加到上下文。

changed 对象的类型与原始对象的类型不同时。

注解

ApplyCurrentValues 方法用于将已修改、已分离版本的对象的属性更改应用于附加到 ObjectContext 的原始版本。 这样可支持 Web 服务等方案,这些方案将实体对象分离并发送至属性已更新的远程应用程序。 使用此方法可以更加方便地将这些更改应用回原始对象。

在执行 ApplyCurrentValues 之后,对象处于 Modified 状态。 必须调用 SaveChanges 方法来更新数据源。

原始对象必须存在于 ObjectStateManager 中,并且必须处于 ModifiedUnchanged 状态。 仅当对象中有修改的属性时, changed 才会修改原始对象。

提供对象的 EntityKey 属性必须设置为有效的 EntityKey

ApplyCurrentValues 不会影响导航属性或相关对象。

ApplyCurrentValues 仅设置类型的实体元数据中存在的属性。 例如,ApplyCurrentValues 操作不涉及在分部类中添加的属性。

适用于