Поделиться через


LinqDataSourceStatusEventArgs.ExceptionHandled Свойство

Определение

Возвращает или задает значение, позволяющее определить, было ли обработано исключение и должно ли оно выбрасываться снова.

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

Значение свойства

true, если исключение обработано; в противном случае —false.

Примеры

В следующем примере показан обработчик событий для Inserted события . В обработчике событий, если Exception свойство имеет значение null, идентификатор продукта извлекается из объекта в свойстве Result . Идентификатор продукта является первичным ключом для таблицы и задается базой данных, поэтому значение неизвестно до завершения операции вставки. Сообщение об исключении регистрируется, Exception если свойство не равно null. Затем ExceptionHandled свойству присваивается значение 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

Комментарии

Можно создать обработчики событий для ContextCreatedсобытий , Deleted, Inserted, Selectedи Updated , чтобы изучить все исключения, возникшие во время этих операций. Если вы обрабатываете исключение и не хотите, чтобы оно было создано снова, задайте для ExceptionHandled свойства значение true. Если для свойства не задано значение ExceptionHandledtrue, исключение будет распространено на следующий обработчик событий в стеке вызовов.

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