Share via


LinqDataSource.Inserting Kejadian

Definisi

Terjadi sebelum operasi penyisipan.

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) 

Jenis Acara

Contoh

Contoh berikut menunjukkan penanganan aktivitas untuk Inserting peristiwa yang memodifikasi data sebelum operasi penyisipan. Objek dari properti dilemparkan NewObject ke jenis bernama Product. Properti DateModifiedProduct objek diatur ke tanggal dan waktu saat ini.

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

Contoh berikut menunjukkan penanganan aktivitas untuk Inserting peristiwa yang mengambil pengecualian validasi.

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

Contoh sebelumnya mengambil pengecualian validasi. Pengecualian mungkin dilemparkan jika nilai tidak cocok dengan jenis properti. Ini mungkin juga dilemparkan dari pemeriksaan yang disesuaikan seperti yang ada dalam contoh berikut. Metode OnAgeChanging memeriksa bahwa angka untuk Age properti tidak negatif.

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  

Keterangan

Inserting Tangani peristiwa untuk memvalidasi objek yang akan disisipkan, untuk memeriksa kesalahan validasi data dari kelas data, untuk mengubah nilai sebelum operasi penyisipan, atau untuk membatalkan operasi penyisipan. Objek LinqDataSourceInsertEventArgs yang diteruskan ke penanganan aktivitas untuk kejadian ini berisi objek baru untuk disisipkan dalam sumber data.

Jika terjadi kesalahan validasi selama operasi penyisipan, LinqDataSourceInsertEventArgs objek berisi pengecualian validasi yang dilemparkan oleh kelas data. Kesalahan validasi terjadi jika nilai yang akan disisipkan tidak cocok dengan jenis properti di kelas data, atau jika tidak lulus pemeriksaan validasi kustom. Dalam penanganan aktivitas untuk peristiwa tersebut Inserting , Anda dapat mengambil pengecualian validasi dan mengambil tindakan yang sesuai.

Jika pengecualian dilemparkan dalam penanganan aktivitas untuk peristiwa tersebut Inserting , Anda harus menangani pengecualian di penanganan aktivitas tersebut. Pengecualian tidak akan diteruskan ke penanganan aktivitas untuk Inserted peristiwa (melalui Exception properti LinqDataSourceStatusEventArgs objek ). Properti Exception hanya berisi pengecualian yang dilemparkan setelah Inserting peristiwa.

Berlaku untuk