我正在设计一个WinForms应用程序。我应该处理哪些异常?
目前,我所有的异常都是在UI级别记录的。
但是,对于他们中的任何一个,除了日志以外,我还要做其他事情吗?这是否表明设计不好?另外,在一种方法中(.NET的方法在windows服务上执行命令),它可以抛出Win32Exception和InvalidOperationException类型的异常。
像FileNotFound这样的异常,我可以提示用户提供另一个文件(虽然.NET有内置的方法来检查文件是否存在),但是像上面这样的例外情况,它们已经降到了低级别机器出现问题,所以这些只能记录下来。
这是决定捕捉哪些异常的正确方法吗?另外,我应该抓住还是抛出ArgumentNullException?它表明代码存在问题,对吧?
您提到的Win32和InvalidOperation异常的原因是什么?根据他们可能被认为是骨头,外源性,令人烦恼或致命的。 – 2011-04-08 16:39:38