我正在创建的方法之一抛出异常。什么是显示(在代码或注释中)我的方法可能抛出异常的最清晰的方式,因此需要将try {}和catch {}应用于我的方法。
谢谢!
答案 0 :(得分:24)
在方法的文档注释中使用<exception/>
tag:
/// <summary>Does Foo</summary>
/// <exception cref="System.ArgumentNullException">
/// Thrown when bar is null.
/// </exception>
public void Foo(Bar bar)
{
}
使用<exception/>
标记的一个好处是Visual Studio会将此信息包含在方法信息工具提示中,如下所示:
答案 1 :(得分:1)
在所有MSDN文档中,每种方法都会显示它可能会抛出的内容。我喜欢这个想法,因此在我的评论中我做了类似的事情:
// throws:MyDangerousError, StupidProgrammerError
如果您想了解更多细节,您可以解释在每种错误被抛出的情况下,通常虽然错误名称足以为用户提供一个想法。
答案 2 :(得分:1)
可悲的是,清晰度不是唯一的问题。否则,你可以这样做:
public void Method_MayThrowException() {
..
}
由于其他原因,这是不受欢迎的,因此可以通过intellisense获取的评论可能效果最佳。
此外,如果您对加载项或进程修改持开放态度,您可以阅读有关Spec#的内容。或者你可以实现FxCop规则。