ObjectContext.ApplyCurrentValues<TEntity>(String, TEntity) Method

Definition

Copies the scalar values from the supplied object into the object in the ObjectContext that has the same key.

public:
generic <typename TEntity>
 where TEntity : class TEntity ApplyCurrentValues(System::String ^ entitySetName, TEntity currentEntity);
public TEntity ApplyCurrentValues<TEntity> (string entitySetName, TEntity currentEntity) where TEntity : class;
member this.ApplyCurrentValues : string * 'Entity -> 'Entity (requires 'Entity : null)
Public Function ApplyCurrentValues(Of TEntity As Class) (entitySetName As String, currentEntity As TEntity) As TEntity

Type Parameters

TEntity

The entity type of the object.

Parameters

entitySetName
String

The name of the entity set to which the object belongs.

currentEntity
TEntity

The detached object that has property updates to apply to the original object. The entity key of currentEntity must match the EntityKey property of an entry in the ObjectContext.

Returns

TEntity

The updated object.

Exceptions

entitySetName or current is null.

The EntitySet from entitySetName does not match the EntitySet of the object's EntityKey.

-or-

The object is not in the ObjectStateManager or it is in a Detached state.

-or-

The entity key of the supplied object is invalid.

entitySetName is an empty string.

Remarks

The ApplyCurrentValues method is used to apply changes that were made to objects outside the ObjectContext, such as detached objects that are received by a Web service. The method copies the scalar values from the supplied object into the object in the ObjectContext that has the same key. You can use the EntityKey of the detached object to retrieve an instance of this object from the data source. For more information, see How to: Return a Specific Object Using its Key. Any values that differ from the original values of the object are marked as modified. Note, the method does not apply the current values to the related objects of currentEntity.

If you have a graph with the current values and want to apply the original values, call ApplyOriginalValues method.

You may also use the ApplyCurrentValues of the ObjectSet<TEntity> or ApplyCurrentValues method of the ObjectStateEntry. For more information, see Building N-Tier Applications.

Applies to

See also