SqlDataSourceView.ConflictDetection 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置值,该值指示操作期间基础数据库中的一行数据更改时,SqlDataSource 控件如何执行更新和删除。
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
方法。 例如,如果 由 SelectCommand 属性指定的命令返回一个 DataSet 包含列 Name
和 Number
的对象,并且 属性 ConflictDetection 设置为 OverwriteChanges 值,则会为 Name
和 Number
为更新操作创建参数。 如果 属性 ConflictDetection 设置为 CompareAllValues 值,则会为 Name
、 Number
、 original_Name
和 original_Number
创建参数。 (原始值的参数的确切名称取决于 OldValuesParameterFormatString.) 然后, SqlDataSourceView 对象确定在 UpdateCommand 属性中指定的方法是否具有匹配的参数。
并发控制是数据存储的一种技术,用于控制当多个客户端访问和操作相同数据时如何在存储中读取和更改数据。 例如,一个客户端读取数据并将其呈现给用户,而另一个客户端读取相同的数据,并将其呈现给其他用户。 如果两个用户都更新数据并将其提交到数据存储,可能会出现一些意外的结果,因为两个客户端可能会更新相同数据的不同值。 这被视为冲突。 通过将 属性设置为 ConflictDetectionCompareAllValues 值,更新操作可以将新旧值与原始数据源进行比较,以检测冲突并根据需要进行处理。
属性的值 ConflictDetection 存储在视图状态中。