LinqDataSourceUpdateEventArgs クラス

定義

Updating イベントのデータを提供します。Provides data for the Updating event.

public ref class LinqDataSourceUpdateEventArgs : System::ComponentModel::CancelEventArgs
public class LinqDataSourceUpdateEventArgs : System.ComponentModel.CancelEventArgs
type LinqDataSourceUpdateEventArgs = class
    inherit CancelEventArgs
Public Class LinqDataSourceUpdateEventArgs
Inherits CancelEventArgs
継承
LinqDataSourceUpdateEventArgs

次の例は、イベントのイベントハンドラーを示して Updating います。The following example shows an event handler for the Updating event. この例では、プロパティとプロパティのプロパティを比較して、プロパティの OriginalObject 値が変更されたかどうかを確認する方法を示し NewObject Category ます。The example shows how to compare properties from the OriginalObject property and the NewObject property to determine whether the value in the Category property has changed. その場合、 CategoryChanged プロパティのオブジェクトのプロパティ NewObject はに設定され true ます。If so, the CategoryChanged property of the object in the NewObject property is set to true.

protected void LinqDataSource_Updating(object sender, LinqDataSourceUpdateEventArgs e)
{
    Product originalProduct = (Product)e.OriginalObject;
    Product newProduct = (Product)e.NewObject;

    if (originalProduct.Category != newProduct.Category)
    {
        newProduct.CategoryChanged = true;
    }
}
Protected Sub LinqDataSource_Updating(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LinqDataSourceUpdateEventArgs)
    Dim originalProduct As Product
    Dim newProduct As Product

    originalProduct = CType(e.OriginalObject, Product)
    newProduct = CType(e.NewObject, Product)

    If (originalProduct.Category <> newProduct.Category) Then
        newProduct.CategoryChanged = True
    End If
End Sub

次の例は、イベントのイベントハンドラーを示して Updating います。The following example shows an event handler for the Updating event. コントロールを使用して、検証例外メッセージを表示し Label ます。It displays any validation exception messages by using a Label control.

Protected Sub LinqDataSource_Updating(ByVal sender As Object, _  
        ByVal e As LinqDataSourceUpdateEventArgs)  
    If (e.Exception IsNot Nothing) Then  
        For Each innerException As KeyValuePair(Of String, Exception) _  
               In e.Exception.InnerExceptions  
            Label1.Text &= innerException.Key & ": " & _  
                innerException.Value.Message & "<br />"  
        Next  
        e.ExceptionHandled = True  
    End If  
End Sub  
protected void LinqDataSource_Updating(object sender,   
        LinqDataSourceUpdateEventArgs e)  
{  
    if (e.Exception != null)  
    {  
        foreach (KeyValuePair<string, Exception> innerException in   
             e.Exception.InnerExceptions)  
        {  
        Label1.Text += innerException.Key + ": " +   
            innerException.Value.Message + "<br />";  
        }  
        e.ExceptionHandled = true;  
    }  
}  

注釈

LinqDataSourceUpdateEventArgsオブジェクトは、イベントのイベントハンドラーに渡され Updating ます。The LinqDataSourceUpdateEventArgs object is passed to any event handler for the Updating event. LinqDataSourceUpdateEventArgsデータソースで更新操作が実行される前に、オブジェクトを使用してデータを調べることができます。You can use the LinqDataSourceUpdateEventArgs object to examine the data before the update operation is executed in the data source. 次に、データの検証、データクラスによってスローされた検証例外の確認、または更新前の値の変更を行うことができます。You can then validate the data, examine validation exceptions thrown by the data class, or change a value before the update. 更新操作をキャンセルすることもできます。You can also cancel the update operation.

オブジェクトには、 OriginalObject 最初にデータソースから取得されたデータが含まれています。The OriginalObject object contains the data that was originally retrieved from the data source. オブジェクトには、 NewObject 更新操作中にデータソースに保存されるデータが含まれています。The NewObject object contains the data that will be saved in the data source during the update operation.

データソースを表すオブジェクトが検証例外をスローしてからデータを更新した場合、プロパティには Exception クラスのインスタンスが含まれ LinqDataSourceValidationException ます。If the object that represents the data source throws a validation exception before updating the data, the Exception property contains an instance of the LinqDataSourceValidationException class. プロパティを使用して、すべての検証例外を取得でき InnerExceptions ます。You can retrieve all the validation exceptions through the InnerExceptions property. 検証例外がスローされなかった場合、プロパティには Exception が格納され null ます。If no validation exception is thrown, the Exception property contains null. 検証例外を処理し、例外が再スローされないようにする場合は、プロパティをに設定し ExceptionHandled true ます。If you handle the validation exceptions and do not want the exception to be re-thrown, set the ExceptionHandled property to true.

既定では、 LinqDataSource コントロールは、データソースの元の値を Web ページのビューステートに格納し ColumnAttribute ます。ただし、属性がとしてマークされているものは除き UpdateCheck.Never ます。By default, the LinqDataSource control stores the original values from the data source in view state on the Web page, except those whose ColumnAttribute attribute is marked as UpdateCheck.Never. LINQ to SQL は、データを更新する前に、データの整合性を自動的にチェックします。LINQ to SQL automatically checks the integrity of the data before updating the data. これを行うには、データソースの現在の値と、ビューステートに格納されている元の値を比較します。It does this by comparing the current values in the data source with the original values stored in view state. データソース内の値が変更された場合、LINQ to SQL は例外を発生させます。LINQ to SQL raises an exception if the values in the data source have changed. イベントのハンドラーを作成することにより、追加のデータ検証を実行でき Updating ます。You can perform additional data validation by creating a handler for the Updating event.

コンストラクター

LinqDataSourceUpdateEventArgs(LinqDataSourceValidationException)

指定した例外を使用して、LinqDataSourceUpdateEventArgs クラスの新しいインスタンスを初期化します。Initializes a new instance of the LinqDataSourceUpdateEventArgs class with the specified exception.

LinqDataSourceUpdateEventArgs(Object, Object)

LinqDataSourceUpdateEventArgs クラスの新しいインスタンスを初期化します。Initializes a new instance of the LinqDataSourceUpdateEventArgs class.

プロパティ

Cancel

イベントをキャンセルするかどうかを示す値を取得または設定します。Gets or sets a value indicating whether the event should be canceled.

(継承元 CancelEventArgs)
Exception

更新操作の前に行われていたデータ検証中にスローされた例外を取得します。Gets the exception that was thrown while the data was being validated before the update operation.

ExceptionHandled

例外が既に処理済みで、再度スローする必要がないかどうかを示す値を取得または設定します。Gets or sets a value that indicates whether the exception was handled and that it should not be thrown again.

NewObject

データ ソースに保存する値が格納されたオブジェクトを取得します。Gets the object that contains the values that will be saved in the data source.

OriginalObject

データ ソースから取得された元の値が格納されたオブジェクトを取得します。Gets the object that contains the values that were originally retrieved from the data source.

メソッド

Equals(Object)

指定されたオブジェクトが現在のオブジェクトと等しいかどうかを判断します。Determines whether the specified object is equal to the current object.

(継承元 Object)
GetHashCode()

既定のハッシュ関数として機能します。Serves as the default hash function.

(継承元 Object)
GetType()

現在のインスタンスの Type を取得します。Gets the Type of the current instance.

(継承元 Object)
MemberwiseClone()

現在の Object の簡易コピーを作成します。Creates a shallow copy of the current Object.

(継承元 Object)
ToString()

現在のオブジェクトを表す文字列を返します。Returns a string that represents the current object.

(継承元 Object)

適用対象

こちらもご覧ください