ConflictOptions 列挙型


データの更新時と削除時に発生したデータの競合を、ASP.NET のデータ ソース コントロールでどのように処理するのかを決定します。Determines how ASP.NET data source controls handle data conflicts when updating or deleting data.

public enum class ConflictOptions
public enum ConflictOptions
type ConflictOptions = 
Public Enum ConflictOptions


CompareAllValues 1

データ ソース コントロールにより、Update メソッドおよび Delete メソッドの oldValues コレクションを使用して、データが他のプロセスによって変更されたかどうかが判断されます。A data source control uses the oldValues collection of the Update and Delete methods to determine whether the data has been changed by another process.

OverwriteChanges 0

データ ソース コントロールにより、データ行内のすべての値がその行自体の値で上書きされます。A data source control overwrites all values in a data row with its own values for the row.


同時実行制御は、複数のクライアントが同じデータにアクセスして操作しているときに、ストア内のデータの読み取りと変更の方法を制御するためにデータストアで使用される手法です。Concurrency control is a technique that 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 the clients might update different values for the same data. これは、競合と見なされます。This is considered a conflict.

ConflictDetectionASP.NET データソースコントロールに対して定義されているプロパティは、基になるデータストレージがオプティミスティック同時実行制御を使用していて、削除または更新操作が実行されるときに、コントロールが基になるデータストレージでのデータの競合をどのように処理するかを決定するために使用されます。The ConflictDetection property that is defined for ASP.NET data source controls is used to determine how a control handles data conflicts in the underlying data storage when the underlying data storage is using optimistic concurrency and a delete or update operation is performed.

既定では、 ConflictDetection プロパティは OverwriteChanges に設定されています。これは、データソースコントロールが行からデータを読み取るときと行が更新されるまでの間にデータ行に加えられたすべての変更をデータソースコントロールが上書きすることを意味します。By default, the ConflictDetection property is set to OverwriteChanges, which means the data source control will overwrite any changes made to a data row between the time the data source control first read data from the row and the time that the row is updated. 主キーは、更新または削除されるデータ行を特定するために使用されますが、その他のデータの比較は実行されません。The primary key is used for locating the data row that will be updated or deleted, but no other comparison of the data is performed. ただし、データソースコントロールが CompareAllValues オプションを使用するように構成されている場合、コントロールはメソッドとメソッドのコレクションに元のデータを渡し oldValues Update Delete ます。これにより、これらの値がデータストレージ内の現在の値と一致する場合にのみ、データを更新または削除するロジックを作成できます。If the data source control is configured to use the CompareAllValues option, however, the control passes the original data in the oldValues collections of the Update and Delete methods so that you can write logic to update or delete data only if these values match the values currently in the data storage. 一致する値は、データが読み取られてから変更されていないことを示します。The matching values indicate that the data has not changed since the time it was read.