我正在做一个用户可以插入/删除/添加实体的表单。我正在使用Winforms c#和实体框架4。
好的,用户可以删除对象。现在,这些对象可以被其他实体引用,因此如果用户想要删除它,他将获得异常。
我捕获该异常,以便向他显示一条消息,指出该对象已开始在其他对象中使用。
我得到的异常是(UpdateException)。但是,如果存在更新问题,也可以引发此异常。有没有办法从Sql使用此异常获取错误代码?因为我确实有这样的错误代码。
如果我使用SqlException,我可以检查它的号码,但这不是我收到的例外。
答案 0 :(得分:-2)
你是说你希望看到完整的例外情况,还是希望用户看到例外?
如果您想查看异常,可以将其写入文本文件:
try
{
// do something
}
catch(SQLException sqlex)
{
using (var file = new StreamWriter(@"C:\Users\Home\Desktop\sqlException.txt"))
{
file.WriteLine(sqlex.ToString());
}
}
catch(Exception e)
{
using (var file = new StreamWriter(@"C:\Users\Home\Desktop\generalException.txt"))
{
file.WriteLine(e.ToString());
}
}
这会将异常写入桌面上的文本文件(根据需要更改目录)。