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