我正在开发一个应用程序,在某些部分还有未处理的异常。我想用调用方法捕获它们并解决它们。
放一个通用处理程序对我的情况不利。我想忽略一些例外,让应用程序继续工作。
Visual Studio中是否有用于此目的的工具或插件?
更新:以澄清我的问题:有很多方法调用而不使用try catch,我想知道这些是什么,自动,不检查所有代码行
答案 0 :(得分:1)
最简单的答案是使用try-catch语句。您将要在try中运行的代码包装起来,并在try下面设置catch。可以在捕获中处理任何异常,并且您可以允许程序继续运行。您的捕获量应从最具体的最后一个订购。
try
{
...code to be run
}
catch(Exception ex)
{
\\handle your exceptions here, you can add as many catches as you need.
Console.WriteLine(ex);
}
上阅读更多内容
答案 1 :(得分:0)
最初的评论会提供一些非常有效的观点,但如果您仍想沿着这条路走下去,可以尝试以下方法。
如果您知道要忽略的异常,我建议您将其添加到try catch中 请考虑以下
try
{
//Run Code here
}
catch (ArgumentNullException ane)
{
// ignore exception here
}
catch (AggregateException ae)
{
//ignore exception here
}
catch (Exception genericException)
{
// this must be last to catch unhandled exceptions
}
实际上在重新阅读你的帖子后我的回答并不完全合适,这意味着你必须修改你的代码并将你的方法调用包含在try catch中。
答案 2 :(得分:0)
与Java不同,C#没有checked exceptions(这是好事还是有争议的;我认为是这样)。我看到了一些选项来确定哪些方法会抛出什么:
希望作者用/// <exception cref="SomeException">Some explanation</exception>
对其进行记录,以便它们显示在IntelliSense中。所有框架代码都有完整记录的例外情况。
自己检查来源或反编译的IL。
使用Exception Reflector等实用程序检查可能的例外情况。