在.NET中哪个类应该用作自定义异常的基类?

Dix*_*onD 1 .net exception

可能重复:
我应该从.NET中的Exception或ApplicationException派生自定义异常吗?

我在MSDN上发现了两个有争议的想法.

如果您正在设计需要创建自己的异常的应用程序,请从ApplicationException类派生.

资源

对于大多数应用程序,从Exception类派生自定义异常.

资源

另外,当我为70-536进行一些练习测试时,有类似的问题,正确答案标记为ApplicationException.

什么是官方指南?

Han*_*son 6

ApplicationException是第一个建议,但过了一段时间MS决定它只是增加了继承深度而没有给予任何好处,所以他们改变了建议只是使用Exception.

您可以在此博客文章中找到更多信息(包括解释理由的引用):http://blogs.msdn.com/b/kcwalina/archive/2006/06/23/644822.aspx