Edit

Share via


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

Definition

Copies the scalar values from the supplied object into set of original values for the object in the ObjectContext that has the same key.

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

Type Parameters

TEntity

The type of the entity object.

Parameters

entitySetName
String

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

originalEntity
TEntity

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

Returns

TEntity

The updated object.

Exceptions

entitySetName or original is null.

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

-or-

An ObjectStateEntry for the object cannot be found in the ObjectStateManager. -or-

The object is in an Added or a Detached state.

-or-

The entity key of the supplied object is invalid or has property changes.

entitySetName is an empty string.

Remarks

The ApplyOriginalValues 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 current values of the object are marked as modified. Note, the method does not apply the current values to the related objects of originalEntity.

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

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

Applies to

See also