ObjectContext::ApplyOriginalValues<TEntity> Method (String^, TEntity)

.NET Framework (current version)

The .NET API Reference documentation has a new home. Visit the .NET API Browser on docs.microsoft.com to see the new experience.

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

Namespace:   System.Data.Objects
Assembly:  System.Data.Entity (in System.Data.Entity.dll)

generic<typename TEntity>
where TEntity : ref class
TEntity ApplyOriginalValues(
	String^ entitySetName,
	TEntity originalEntity


Type: System::String^

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

Type: 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.

Return Value

Type: TEntity

The updated object.

Type Parameters


The type of the entity object.

Exception Condition

entitySetName or original is null.


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


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

The object is in an Added or a Detached state.


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


entitySetName is an empty string.

The ApplyOriginalValues<TEntity> 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<TEntity> 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.

.NET Framework
Available since 4.0
Return to top