ObjectDataSourceView.ConflictDetection Property


Gets or sets a value that determines how the ObjectDataSource control performs updates and deletes when data in a row in the underlying data storage changes during the time of the operation.

Namespace:   System.Web.UI.WebControls
Assembly:  System.Web (in System.Web.dll)

member ConflictDetection : ConflictOptions with get, set

Property Value

Type: System.Web.UI.ConflictOptions

One of the ConflictOptions values. The default is the ConflictOptions.OverwriteChanges value.

Exception Condition

The selected value is not one of the ConflictOptions values.

The ConflictDetection property determines whether parameters for old and new values are applied to the Update method. For example, if the method that is specified by the SelectMethod property returns a DataTable object with the columns Name and Number, and the ConflictDetection property is set to the OverwriteChanges value, parameters are created for Name and Number for the Update method. If the ConflictDetection property is set to the CompareAllValues value, parameters are created with the names Name, Number, original_Name, and original_Name. (The exact name of the parameters for the original values depends on the OldValuesParameterFormatString.) The ObjectDataSourceView then determines if the method that is specified in the UpdateMethod property has parameters that match.

Concurrency control is a technique data stores use to control how data is read and changed in the store when multiple clients are accessing and manipulating the same data. For example, one client reads data and presents it to a user, while another client reads the same data, and presents it to a different user. If both users update the data and submit it to the data storage, some unexpected result might occur, because both clients might update different values for the same data. This is considered a conflict. By setting the ConflictDetection property to the CompareAllValues value, the Update method can then compare the old and new values to the original data source to detect conflicts and handle them, as necessary.

The value of the ConflictDetection property is stored in view state.

.NET Framework
Available since 2.0
Return to top