c#custom DbUpdateException

时间:2015-12-09 19:41:34

标签: c# wpf exception

我正在使用实体框架代码中的数据库构建一个wpf应用程序。

我允许用户删除数据库中的项目,但是当项目链接到其他数据时,将抛出异常。

这就是我原来的

try
{
  //delete item
}
catch (Exception ex)
{
  MessageBox.Show(ex.Message)
}

这是有效的,但显示的消息并不是用户友好的。所以我尝试创建custom exception

public class CustomException : Exception
{
    public CustomException (string Message)
    {
        Message = "Item can't be deleted";
    }
}

我修改了我的捕捉

catch (CustomException ex)
{
  MessageBox.Show(ex.Message)
}

但这并没有显示messagebox我的消息,但它正在停止我的应用程序的DbUpdateException。

有没有办法为这种类型的异常自定义消息?

1 个答案:

答案 0 :(得分:0)

修改catch不会改变框架抛出异常的方式。您应该抓住DbUpdateException并显示适当的消息:

catch (DbUpdateException ex)
{
  MessageBox.Show("item can't be deleted");
}