LinqDataSource.Updating LinqDataSource.Updating LinqDataSource.Updating LinqDataSource.Updating Event

Определение

Происходит перед операцией обновления.Occurs before an update operation.

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) 

Примеры

В примере показан обработчик событий для Updating событий.The following example shows an event handler for the Updating event. Код сравнивает свойства из OriginalObject свойство и NewObject свойство, чтобы узнать, изменилось ли значение.The code compares properties from the OriginalObject property and the NewObject property to see whether a value has changed. Если значение изменилось, значение NewObject свойству true.If the value has changed, a value of the NewObject property is set to 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

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

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

Предыдущий пример получает исключения проверки.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  

Комментарии

Обрабатывать Updating событие для проверки объекта обновления, для проверки на наличие ошибок проверки данных в классе данных, чтобы изменить значение перед операцией обновления, либо отменить операцию обновления.Handle the Updating event to validate the object to be updated, to examine data validation errors from the data class, to change a value before the update operation, or to cancel the update operation. LinqDataSourceUpdateEventArgs Объект, который передается обработчикам событий содержит исходный объект и обновленного объекта.The LinqDataSourceUpdateEventArgs object that is passed to event handlers contains both the original object and the updated object.

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

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

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