LinqDataSourceStatusEventArgs.ExceptionHandled Propriedade
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
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.