Compartilhar via


LinqDataSourceUpdateEventArgs Classe

Definição

Fornece dados para o evento de Updating .

public ref class LinqDataSourceUpdateEventArgs : System::ComponentModel::CancelEventArgs
public class LinqDataSourceUpdateEventArgs : System.ComponentModel.CancelEventArgs
type LinqDataSourceUpdateEventArgs = class
    inherit CancelEventArgs
Public Class LinqDataSourceUpdateEventArgs
Inherits CancelEventArgs
Herança
LinqDataSourceUpdateEventArgs

Exemplos

O exemplo a seguir mostra um manipulador de eventos para o Updating evento. O exemplo mostra como comparar propriedades da OriginalObject propriedade e da NewObject propriedade para determinar se o valor na Category propriedade foi alterado. Nesse caso, a CategoryChanged propriedade do objeto na NewObject propriedade é definida truecomo .

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

O exemplo a seguir mostra um manipulador de eventos para o Updating evento. Ele exibe todas as mensagens de exceção de validação usando um Label controle .

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

Comentários

O LinqDataSourceUpdateEventArgs objeto é passado para qualquer manipulador de eventos para o Updating evento. Você pode usar o LinqDataSourceUpdateEventArgs objeto para examinar os dados antes que a operação de atualização seja executada na fonte de dados. Em seguida, você pode validar os dados, examinar as exceções de validação geradas pela classe de dados ou alterar um valor antes da atualização. Você também pode cancelar a operação de atualização.

O OriginalObject objeto contém os dados que foram originalmente recuperados da fonte de dados. O NewObject objeto contém os dados que serão salvos na fonte de dados durante a operação de atualização.

Se o objeto que representa a fonte de dados gerar uma exceção de validação antes de atualizar os dados, a Exception propriedade conterá uma instância da LinqDataSourceValidationException classe . Você pode recuperar todas as exceções de validação por meio da InnerExceptions propriedade . Se nenhuma exceção de validação for gerada, a Exception propriedade conterá null. Se você manipular as exceções de validação e não quiser que a exceção seja gerada novamente, defina a ExceptionHandled propriedade como true.

Por padrão, o LinqDataSource controle armazena os valores originais da fonte de dados no estado de exibição na página da Web, exceto aqueles cujo ColumnAttribute atributo está marcado como UpdateCheck.Never. LINQ to SQL verifica automaticamente a integridade dos dados antes de atualizar os dados. Ele faz isso comparando os valores atuais na fonte de dados com os valores originais armazenados no estado de exibição. LINQ to SQL gerará uma exceção se os valores na fonte de dados forem alterados. Você pode executar validação de dados adicionais criando um manipulador para o Updating evento.

Construtores

LinqDataSourceUpdateEventArgs(LinqDataSourceValidationException)

Inicializa uma nova instância da classe LinqDataSourceUpdateEventArgs com a exceção especificada.

LinqDataSourceUpdateEventArgs(Object, Object)

Inicializa uma nova instância da classe LinqDataSourceUpdateEventArgs.

Propriedades

Cancel

Obtém ou define um valor que indica se o evento deve ser cancelado.

(Herdado de CancelEventArgs)
Exception

Obtém a exceção gerada enquanto os dados estavam sendo validados antes da operação de atualização.

ExceptionHandled

Obtém ou define um valor que indica se a exceção foi tratada e que ela não deve ser gerada novamente.

NewObject

Obtém o objeto que contém os valores que serão salvos na fonte de dados.

OriginalObject

Obtém o objeto que contém os valores que foram originalmente recuperados da fonte de dados.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Confira também