Share via


ObjectDataSourceView.ConflictDetection 属性

定义

获取或设置一个值,该值确定在操作期间,当基础数据存储中某行的数据更改时,ObjectDataSource 控件如何执行更新和删除操作。

public:
 property System::Web::UI::ConflictOptions ConflictDetection { System::Web::UI::ConflictOptions get(); void set(System::Web::UI::ConflictOptions value); };
public System.Web.UI.ConflictOptions ConflictDetection { get; set; }
member this.ConflictDetection : System.Web.UI.ConflictOptions with get, set
Public Property ConflictDetection As ConflictOptions

属性值

ConflictOptions 值之一。 默认为 OverwriteChanges 值。

例外

所选值不是 ConflictOptions 值之一。

注解

属性 ConflictDetection 确定是否将新旧值的参数应用于 Update 方法。 例如,如果 由 SelectMethod 属性指定的方法返回一个DataTable包含列NameNumber的对象,并且 属性ConflictDetection设置为 OverwriteChanges 值,则为 NameUpdate 方法创建 和 Number 参数。 ConflictDetection如果将 属性设置为 CompareAllValues 值,则会创建名称Name为 、Numberoriginal_Nameoriginal_Name的参数。 (原始值的参数的确切名称取决于 OldValuesParameterFormatString.) ObjectDataSourceView 然后确定属性中指定的 UpdateMethod 方法是否具有匹配的参数。

并发控制是数据存储的一种技术,用于控制当多个客户端访问和操作相同数据时如何在存储中读取和更改数据。 例如,一个客户端读取数据并将其呈现给用户,而另一个客户端读取相同的数据,并将其呈现给其他用户。 如果两个用户都更新数据并将其提交到数据存储,则可能会发生一些意外的结果,因为两个客户端可能会更新相同数据的不同值。 这被视为冲突。 通过将 属性设置为 ConflictDetectionCompareAllValues 值, Update 该方法可以将旧值和新值与原始数据源进行比较,以检测冲突并根据需要进行处理。

属性的值 ConflictDetection 存储在视图状态中。

适用于

另请参阅