ObjectContext::ApplyPropertyChanges Method (String^, Object^)
Applies property changes from a detached object to an object already attached to the object context.
Assembly: System.Data.Entity (in System.Data.Entity.dll)
public: [BrowsableAttribute(false)] [ObsoleteAttribute("Use ApplyCurrentValues instead")] void ApplyPropertyChanges( String^ entitySetName, Object^ changed )
Parameters
- entitySetName
-
Type:
System::String^
The name of the entity set to which the object belongs.
- changed
-
Type:
System::Object^
The detached object that has property updates to apply to the original object.
| Exception | Condition |
|---|---|
| ArgumentNullException | When entitySetName is null or an empty string. -or- When changed is null. |
| InvalidOperationException | |
| ArgumentException | When the type of the changed object is not the same type as the original object. |
The ApplyCurrentValues<TEntity> method is used to apply property changes from a modified, detached version of an object to the original version attached to the ObjectContext. This supports scenarios, such as Web services, where an entity object is detached and sent to a remote application where property updates are made. This method enables you to more easily apply these changes back to the original object.
After ApplyCurrentValues<TEntity>, the object is in the Modified state. You must call the SaveChanges method to update the data source.
The original object must exist in the ObjectStateManager and must be in the Modified or Unchanged state. The original object is only modified if there are modified properties in the changed object.
The EntityKey property of the supplied object must be set to a valid EntityKey.
ApplyCurrentValues<TEntity> does not affect navigation properties or related objects.
ApplyCurrentValues<TEntity> only sets properties that exist in the entity metadata for the type. For example, properties that are added in a partial class are not included in the ApplyCurrentValues<TEntity> operation.
Available since 3.5