LinqDataSource.Updating Událost

Definice

Nastane před operací aktualizace.

public:
 event EventHandler<System::Web::UI::WebControls::LinqDataSourceUpdateEventArgs ^> ^ Updating;
public event EventHandler<System.Web.UI.WebControls.LinqDataSourceUpdateEventArgs> Updating;
member this.Updating : EventHandler<System.Web.UI.WebControls.LinqDataSourceUpdateEventArgs> 
Public Custom Event Updating As EventHandler(Of LinqDataSourceUpdateEventArgs) 

Event Type

Příklady

Následující příklad ukazuje obslužnou rutinu Updating události pro událost. Kód porovná vlastnosti vlastnosti OriginalObject a NewObject vlastnosti a zjistí, jestli se hodnota změnila. Pokud se hodnota změnila, hodnota NewObject vlastnosti se nastaví na 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

Následující příklad ukazuje obslužnou rutinu Updating události pro událost, která načítá výjimky ověřování.

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

Předchozí příklad načte výjimky ověřování. Pokud hodnota neodpovídá typu vlastnosti, může dojít k výjimce. Může být také vyvolán přizpůsobenou kontrolou, jako je kontrola v následujícím příkladu. Metoda OnAgeChanging zkontroluje, že číslo vlastnosti Age není záporné.

partial void  OnAgeChanging(int? value)  
{  
    if (value < 0)  
    {  
        throw new Exception("Age cannot be a negative number.");  
    }  
}  
Private Sub OnAgeChanging(ByVal value As System.Nullable(Of Integer))  
    If (value < 0) Then  
        Throw New Exception("Age cannot be a negative number.")  
    End If  
End Sub  

Poznámky

Updating Zpracování události k ověření objektu, který má být aktualizován, ke kontrole chyb ověření dat z datové třídy, ke změně hodnoty před operací aktualizace nebo zrušení operace aktualizace. Objekt LinqDataSourceUpdateEventArgs předaný obslužné rutině událostí obsahuje původní i aktualizovaný objekt.

Pokud dojde k chybě ověření během operace aktualizace, LinqDataSourceInsertEventArgs objekt obsahuje výjimky ověření, které jsou vyvolán datovou třídou. K chybě ověření dojde, pokud hodnota, která se má aktualizovat, neodpovídá typu vlastnosti v datové třídě nebo pokud neprojde vlastní ověřovací kontrolou. V obslužné rutině Updating události pro událost můžete načíst výjimky ověření a provést příslušnou akci.

Pokud je v obslužné rutině Updating události vyvolán výjimka, musíte tuto výjimku zpracovat v této obslužné rutině události. Výjimka nebude předána obslužné rutině události události Updated (prostřednictvím Exception vlastnosti objektu LinqDataSourceStatusEventArgs ). Vlastnost Exception obsahuje pouze výjimky, které jsou vyvolán po Updating události.

Platí pro