方法 : 同時実行の競合を検査するメンバーを指定する (LINQ to SQL)
オプティミスティック同時実行の競合を検出する更新チェックにどのメンバーを含めるかを指定するには、LINQ to SQL の ColumnAttribute 属性の UpdateCheck プロパティに 3 つの列挙値のいずれか 1 つを適用します。
UpdateCheck プロパティ (デザイン時に設定) は、LINQ to SQL の実行時の同時実行機能と一緒に使用されます。 詳細については、「オプティミスティック同時実行の概要 (LINQ to SQL)」を参照してください。
メモ |
---|
IsVersion=true として指定されているメンバーがない限り、元のメンバーの各値は、データベースの現在の状態と比較されます。詳細については、「IsVersion」を参照してください。 |
コード例については、「UpdateCheck」を参照してください。
競合の検出でこのメンバーを常に使用するには
ColumnAttribute 属性に UpdateCheck プロパティを追加します。
UpdateCheck プロパティ値を Always に設定します。
競合の検出でこのメンバーを使用しないようにするには
ColumnAttribute 属性に UpdateCheck プロパティを追加します。
UpdateCheck プロパティ値を Never に設定します。
アプリケーションでメンバーの値が変更された場合にのみ、競合の検出でこのメンバーを使用するには
ColumnAttribute 属性に UpdateCheck プロパティを追加します。
UpdateCheck プロパティ値を WhenChanged に設定します。
使用例
次の例では、更新チェックで HomePage オブジェクトが検査されないように指定しています。 詳細については、「UpdateCheck」を参照してください。
<Column(Storage:="_HomePage", DbType:="NText", UpdateCheck:=UpdateCheck.Never)> _
Public Property HomePage() As String
Get
Return Me._HomePage
End Get
Set(ByVal value As String)
If ((Me._HomePage <> value) _
= false) Then
Me.OnHomePageChanging(value)
Me.SendPropertyChanging
Me._HomePage = value
Me.SendPropertyChanged("HomePage")
Me.OnHomePageChanged
End If
End Set
End Property
[Column(Storage="_HomePage", DbType="NText", UpdateCheck=UpdateCheck.Never)]
public string HomePage
{
get
{
return this._HomePage;
}
set
{
if ((this._HomePage != value))
{
this.OnHomePageChanging(value);
this.SendPropertyChanging();
this._HomePage = value;
this.SendPropertyChanged("HomePage");
this.OnHomePageChanged();
}
}
}