LinqDataSource.Inserting Событие

Определение

Происходит перед операцией вставки.Occurs before an insert operation.

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) 

Примеры

В следующем примере показан обработчик событий для события Inserting, изменяющего данные перед операцией вставки.The following example shows an event handler for the Inserting event that modifies data before the insert operation. Объект из свойства NewObject приводится к типу с именем Product.The object from the NewObject property is cast to a type named Product. Свойству DateModified объекта Product присвоена текущая дата и время.The DateModified property of the Product object is set to the current date and time.

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

В следующем примере показан обработчик событий для события Inserting, которое получает исключения проверки.The following example shows an event handler for the Inserting event that retrieves validation exceptions.

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

В предыдущем примере извлекаются исключения проверки.The previous example retrieves validation exceptions. Если значение не соответствует типу свойства, может возникнуть исключение.An exception might be thrown if a value does not match the type of the property. Кроме того, она может быть вызвана из настроенной проверки, как в следующем примере.It might also be thrown from a customized check such as the one in the following example. Метод OnAgeChanging проверяет, что число для свойства Age не отрицательное.The OnAgeChanging method checks that the number for the Age property is not negative.

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  

Комментарии

Обрабатывает событие Inserting для проверки объекта, который необходимо вставить, для проверки ошибок проверки данных в классе данных, изменения значения перед операцией вставки или отмены операции вставки.Handle the Inserting event to validate the object to be inserted, to examine data validation errors from the data class, to change a value before the insert operation, or to cancel the insert operation. LinqDataSourceInsertEventArgs объект, передаваемый обработчикам событий для этого события, содержит новый объект для вставки в источник данных.The LinqDataSourceInsertEventArgs object passed to event handlers for this event contains the new object to insert in the data source.

Если во время операции вставки возникает ошибка проверки, то объект LinqDataSourceInsertEventArgs содержит исключения проверки, вызываемые классом данных.If a validation error occurs during the insert operation, the LinqDataSourceInsertEventArgs object contains the validation exceptions that are thrown by the data class. Ошибка проверки возникает, если вставляемое значение не соответствует типу свойства в классе данных или если не прошел пользовательскую проверку.A validation error occurs if a value to be inserted does not match the type of the property in the data class, or if it does not pass a custom validation check. В обработчике события Inserting можно получить исключения проверки и предпринять соответствующие действия.In an event handler for the Inserting event, you can retrieve the validation exceptions and take appropriate action.

Если в обработчике событий для события Inserting возникает исключение, необходимо выполнить обработку исключения в этом обработчике событий.If an exception is thrown in an event handler for the Inserting event, you must handle the exception in that event handler. Исключение не будет передано обработчику событий для события Inserted (через свойство Exception объекта LinqDataSourceStatusEventArgs).The exception will not be passed to an event handler for the Inserted event (through the Exception property of the LinqDataSourceStatusEventArgs object). Свойство Exception содержит только исключения, вызываемые после события Inserting.The Exception property contains only the exceptions that are thrown after the Inserting event.

Применяется к