Sdílet prostřednictvím


LinqDataSource.Inserting Událost

Definice

Nastane před operací vložení.

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

Event Type

Příklady

Následující příklad ukazuje obslužnou rutinu Inserting události pro událost, která upravuje data před operací vložení. Objekt z NewObject vlastnosti je přetypován na typ s názvem Product. Vlastnost DateModified objektu Product je nastavena na aktuální datum a čas.

protected void LinqDataSource_Inserting(object sender, LinqDataSourceInsertEventArgs e)
{
    Product product = (Product)e.NewObject;
    product.DateModified = DateTime.Now;
}
Protected Sub LinqDataSource_Inserting(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LinqDataSourceInsertEventArgs)
    Dim product As Product
    product = CType(e.NewObject, Product)
    product.DateModified = DateTime.Now
End Sub

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

Protected Sub LinqDataSource_Inserting(ByVal sender As Object, _  
        ByVal e As LinqDataSourceInsertEventArgs)  
    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_Inserting(object sender,   
        LinqDataSourceInsertEventArgs 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ěření. Pokud hodnota neodpovídá typu vlastnosti, může dojít k výjimce. Může být také vyvolán z přizpůsobené kontroly, jako je ta 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

Inserting Zpracování události k ověření objektu, který má být vložen, ke kontrole chyb ověření dat z datové třídy, ke změně hodnoty před operací vložení nebo zrušení operace vložení. Objekt LinqDataSourceInsertEventArgs předaný obslužné rutině událostí pro tuto událost obsahuje nový objekt, který se má vložit do zdroje dat.

Pokud během operace vložení dojde k chybě ověření, LinqDataSourceInsertEventArgs objekt obsahuje ověřovací výjimky, které jsou vyvolány datovou třídou. K chybě ověření dojde, pokud hodnota, která má být vložena, neodpovídá typu vlastnosti v datové třídě nebo pokud neprojde vlastní ověřovací kontrolou. V obslužné rutině Inserting 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ě Inserting události vyvolán výjimka, musíte ji zpracovat v této obslužné rutině události. Výjimka se nepředá obslužné rutině události události Inserted (prostřednictvím Exception vlastnosti objektu LinqDataSourceStatusEventArgs ). Vlastnost Exception obsahuje pouze výjimky, které jsou vyvolány po Inserting události.

Platí pro