如何捕获entitydatasource异常

时间:2012-11-29 17:45:28

标签: asp.net entity-framework error-handling

我有一个绑定到entitydatasource的gridview。我使用拖放工具箱中的asp.net控件并使用实体数据模型创建了这个。我在代码隐藏中几乎没有输入。出于测试目的,我编辑了gridview并添加了无效的数据。然后我点击了更新以引发异常。

所以我的问题是我想尝试在我自己的错误处理程序中捕获异常,但我不知道我在哪里或如何做到这一点,因为我不确定我应该关注哪个事件。我想知道从哪里开始。

非常感谢

3 个答案:

答案 0 :(得分:4)

您可以在EntityDataSource的OnUpdated事件中捕获异常:

protected void EntityDataSource1_OnUpdated(object sender, EntityDataSourceChangedEventArgs e)
{
   if (e.Exception != null) 
   {
         // handle here
          e.ExceptionHandled = true;
   }
}

}

答案 1 :(得分:1)

你将无法使用drag'n drop,声明性语法设计表单。在将用户输入提交到服务器之前,最好先验证用户输入。这应该是大多数例外。

您的另一个选择是使用代码中的代码替换声明性标记,您可以在调用SaveChanges()之前捕获异常或调用验证;

答案 2 :(得分:1)

你可以在global.asax中捕获异常,但它会显示一般错误。