我目前正在抛出异常并且它给出的消息是值不在预期范围内。我试图纠正一段代码以获取此异常并将其抑制 - 我知道问题是什么 - 基本上有人试图使用不存在的id从列表中提取记录。 / p>
我是如何抓住这个想法的?
答案 0 :(得分:2)
要抑制异常,您需要执行类似的操作
try
{
// Code that may throw an exception.
}
catch (Exception ex) // Better to use a more specific exception class
{
// Do nothing - That suppresses the exception.
// If you want to do additional checking that may continue the exception
// up the stack use "throw" on its own - which compiled to CIL/MSIL's
// "rethrow" and doesn't drop much of the information that would
// go if you did "throw ex"
}
所有这些都是为了抑制异常。
为了那些必须保持这段代码的人的理智(或者你在6个月内忘记了为什么要这样做的具体细节),你也可以好好评论为什么要压制这个代码。例外。如果我看到代码抑制异常,我总是想知道原因。
答案 1 :(得分:0)
使用空try
的{{1}} catch
块?
如果你想要真正具体,你可以使用异常过滤器来捕捉那种情况(当然在c#6中)。