C#检查异常

时间:2010-03-25 18:00:45

标签: c# visual-studio exception stylecop

我真正喜欢Java中的一个不在C#中的功能是checked exceptions。有没有办法模拟(可能通过stylecop?)或在Visual Studio中启用已检查的异常?

是的我知道很多人不喜欢他们,但我发现他们可以提供帮助。

3 个答案:

答案 0 :(得分:14)

据我所知,C#中没有办法检查异常。

不支持该功能(或错误,取决于你如何看待:) :)

最好的办法是在方法中添加XML注释,包括它引发的异常,并希望调用代码的人阅读文档。

这样的事情:

/// <summary>
/// This is my method that does stuff.
/// </summary>
/// <exception cref="InvalidOperationException">This stuff can't be done!</exception>
public void DoStuff() 
{
    // do stuff
}

答案 1 :(得分:2)

我敢打赌你可以使用像PostSharp这样的工具来实现已检查的异常。类似的东西:

[Throws(typeof(MyExpection))]
public void Method()
{
   throw new MyException();
}

不确定PostSharp或其他AOP框架中是否存在类似这样的内容(以及.NET设计人员不喜欢检查异常的原因仍然适用)但是我敢打赌它可能会做。

答案 2 :(得分:0)

问题: “有没有办法模拟(也许通过stylecop?)或在Visual Studio中打开检查的异常?” -是:请尝试以下Visual Studio扩展:https://marketplace.visualstudio.com/items?itemName=YoavFrandzel.CheckedExceptions