LinqDataSourceUpdateEventArgs Klasse

Definition

Stellt Daten für das Updating-Ereignis bereit.

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

Beispiele

Das folgende Beispiel zeigt einen Ereignishandler für das Updating Ereignis. Das Beispiel zeigt, wie Eigenschaften aus der OriginalObject -Eigenschaft und der NewObject -Eigenschaft verglichen werden, um festzustellen, ob sich der Wert in der Category Eigenschaft geändert hat. Wenn dies der Grund ist, wird die CategoryChanged -Eigenschaft des -Objekts in der NewObject -Eigenschaft auf truefestgelegt.

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

Das folgende Beispiel zeigt einen Ereignishandler für das Updating Ereignis. Es zeigt alle Validierungs-Ausnahmemeldungen mithilfe eines -Steuerelements Label an.

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;  
    }  
}  

Hinweise

Das LinqDataSourceUpdateEventArgs -Objekt wird an einen beliebigen Ereignishandler für das Updating Ereignis übergeben. Sie können das LinqDataSourceUpdateEventArgs -Objekt verwenden, um die Daten zu untersuchen, bevor der Aktualisierungsvorgang in der Datenquelle ausgeführt wird. Anschließend können Sie die Daten überprüfen, von der Datenklasse ausgelöste Validierungsausnahmen untersuchen oder einen Wert vor dem Update ändern. Sie können den Updatevorgang auch abbrechen.

Das OriginalObject -Objekt enthält die Daten, die ursprünglich aus der Datenquelle abgerufen wurden. Das NewObject -Objekt enthält die Daten, die während des Aktualisierungsvorgangs in der Datenquelle gespeichert werden.

Wenn das Objekt, das die Datenquelle darstellt, vor dem Aktualisieren der Daten eine Validierungs-Ausnahme auslöst, enthält die Exception -Eigenschaft einen instance der LinqDataSourceValidationException -Klasse. Sie können alle Validierungsausnahmen über die InnerExceptions -Eigenschaft abrufen. Wenn keine Validierungs-Ausnahme ausgelöst wird, enthält nulldie Exception -Eigenschaft . Wenn Sie die Validierungsausnahmen behandeln und die Ausnahme nicht erneut ausgelöst werden soll, legen Sie die ExceptionHandled -Eigenschaft auf fest true.

Standardmäßig speichert das LinqDataSource Steuerelement die ursprünglichen Werte aus der Datenquelle im Ansichtszustand auf der Webseite, mit Ausnahme der Werte, deren ColumnAttribute Attribut als UpdateCheck.Nevergekennzeichnet ist. LINQ to SQL überprüft automatisch die Integrität der Daten, bevor die Daten aktualisiert werden. Dazu werden die aktuellen Werte in der Datenquelle mit den ursprünglichen Werten verglichen, die im Ansichtszustand gespeichert sind. LINQ to SQL löst eine Ausnahme aus, wenn sich die Werte in der Datenquelle geändert haben. Sie können eine zusätzliche Datenüberprüfung durchführen, indem Sie einen Handler für das Updating Ereignis erstellen.

Konstruktoren

LinqDataSourceUpdateEventArgs(LinqDataSourceValidationException)

Initialisiert eine neue Instanz der LinqDataSourceUpdateEventArgs-Klasse mit der angegebenen Ausnahme.

LinqDataSourceUpdateEventArgs(Object, Object)

Initialisiert eine neue Instanz der LinqDataSourceUpdateEventArgs-Klasse.

Eigenschaften

Cancel

Ruft einen Wert ab, der angibt, ob das Ereignis abgebrochen werden soll, oder legt diesen fest.

(Geerbt von CancelEventArgs)
Exception

Ruft die Ausnahme ab, die ausgelöst wurde, während die Daten vor dem Aktualisierungsvorgang validiert wurden.

ExceptionHandled

Ruft einen Wert ab, der angibt, ob die Ausnahme behandelt wurde und dass diese nicht erneut ausgelöst werden soll, oder legt diesen fest.

NewObject

Ruft das Objekt ab, das die Werte enthält, die in der Datenquelle gespeichert werden.

OriginalObject

Ruft das Objekt mit den Werten ab, die ursprünglich von der Datenquelle abgerufen wurden.

Methoden

Equals(Object)

Bestimmt, ob das angegebene Objekt gleich dem aktuellen Objekt ist.

(Geerbt von Object)
GetHashCode()

Fungiert als Standardhashfunktion.

(Geerbt von Object)
GetType()

Ruft den Type der aktuellen Instanz ab.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.

(Geerbt von Object)
ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.

(Geerbt von Object)

Gilt für:

Weitere Informationen