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 値のいずれか 1 つ。 既定値は、OverwriteChanges です。

例外

選択した値が ConflictOptions 値の 1 つではありません。

注釈

プロパティは ConflictDetection 、古い値と新しい値のパラメーターを メソッドに Update 適用するかどうかを決定します。 たとえば、 プロパティでSelectMethod指定されたメソッドが、 列 NameNumberを持つオブジェクトを返DataTableConflictDetection、 プロパティが 値に設定されている場合、 メソッドの および に対NameNumberしてOverwriteChangesパラメーターがUpdate作成されます。 プロパティが ConflictDetection 値にCompareAllValues設定されている場合、パラメーターは、、Numberoriginal_Nameoriginal_Nameという名前Nameで作成されます。 (元の値のパラメーターの正確な名前は、 OldValuesParameterFormatStringによって異なります)。 ObjectDataSourceView 次に、 プロパティで UpdateMethod 指定されたメソッドに一致するパラメーターがあるかどうかを判断します。

コンカレンシー制御は、複数のクライアントが同じデータにアクセスして操作する場合に、データストアがストア内のデータの読み取りと変更方法を制御するために使用する手法です。 たとえば、あるクライアントがデータを読み取ってユーザーに提示し、別のクライアントが同じデータを読み取って別のユーザーに提示します。 両方のユーザーがデータを更新してデータ ストレージに送信すると、両方のクライアントが同じデータに対して異なる値を更新する可能性があるため、予期しない結果が発生する可能性があります。 これは競合と見なされます。 プロパティを ConflictDetection 値に CompareAllValues 設定すると、メソッドは Update 古い値と新しい値を元のデータ ソースと比較して競合を検出し、必要に応じて処理できます。

プロパティの ConflictDetection 値はビュー ステートに格納されます。

適用対象

こちらもご覧ください