Share via


LinqDataSourceStatusEventArgs.ExceptionHandled Propriedade

Definição

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

public:
 property bool ExceptionHandled { bool get(); void set(bool value); };
public bool ExceptionHandled { get; set; }
member this.ExceptionHandled : bool with get, set
Public Property ExceptionHandled As Boolean

Valor da propriedade

true se a exceção foi tratada; caso contrário, false.

Exemplos

O exemplo a seguir mostra um manipulador de eventos para o Inserted evento. No manipulador de eventos, se a Exception propriedade for null, a ID do produto será recuperada do objeto na Result propriedade . A ID do produto é uma chave primária para a tabela e é definida pelo banco de dados, portanto, o valor não é conhecido até que a operação de inserção seja concluída. A mensagem de exceção será registrada se a Exception propriedade não for igual a null. Em ExceptionHandled seguida, a propriedade é definida como true.

protected void LinqDataSource_Inserted(object sender, LinqDataSourceStatusEventArgs e)
{
    if (e.Exception == null)
    {
        Product newProduct = (Product)e.Result;
        Literal1.Text = "The new product id is " + newProduct.ProductID;
        Literal1.Visible = true;            
    }
    else
    {
        LogError(e.Exception.Message);
        Literal1.Text = "We are sorry. There was a problem saving the record. The administrator has been notified.";
        Literal1.Visible = true;
        e.ExceptionHandled = true;            
    }
}
Protected Sub LinqDataSource_Inserted(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.LinqDataSourceStatusEventArgs)
    If (IsNothing(e.Exception)) Then
        Dim newProduct As Product
        newProduct = CType(e.Result, Product)
        Literal1.Text = "The new product id is " & newProduct.ProductID
        Literal1.Visible = True
    Else
        LogError(e.Exception.Message)
        Literal1.Text = "We are sorry. There was a problem saving the record. The administrator has been notified."
        Literal1.Visible = True
        e.ExceptionHandled = True
    End If
End Sub

Comentários

Você pode criar manipuladores de eventos para os ContextCreatedeventos , Deleted, Inserted, Selectede Updated para examinar quaisquer exceções que ocorreram durante essas operações. Se você manipular a exceção e não quiser que ela seja lançada novamente, defina a ExceptionHandled propriedade como true. Se você não definir a ExceptionHandled propriedade como true, a exceção será propagada para o próximo manipulador de eventos na pilha de chamadas.

Aplica-se a