dam*_*ian 2 c# visual-studio visual-studio-debugging
我正在使用第 3 方代码,该代码抛出并捕获 aNullReferenceException作为其正常、正确操作的一部分。我希望能够告诉 Visual Studio 忽略此实例(即忽略NullReferenceException从此 .cs 文件 + 行号抛出的 s),但继续在其他抛出的NullReferenceException情况下中断。
这可能吗?
编辑:我所说的第 3 方代码是指属于项目一部分的源代码,但我不拥有也不会修改。例如,我不能使用任何依赖于 VS用户代码定义的东西,因为这也算作用户代码。项目的规模意味着这个细节是我无法控制的。出于类似的原因,我不想添加[DebuggerHidden].
正如其他人提到的,如果确实在第 3 方代码内捕获并处理了异常(其中调试器对“第 3 方代码”的定义是未优化的程序集中的代码,并且我们没有 .pdbs) ,然后为了避免调试器停止在其上,您只需转到“工具”->“选项”->“调试”->“常规”并启用“仅我的代码”。
如果相关代码不是第3 方代码,您可以向其添加 DebuggerNonUserCode 属性,以控制调试器是否会在修饰方法中出现异常时中断(同样,假设启用了“Just My Code”)。
在 VS“15”预览版 5 中,您实际上可以在特定模块内抛出异常时禁用中断,但这在 VS2015 中不可用。
快速解决此问题的另一个选择是使用OzCode,它有一个工具栏按钮,用于切换“中断所有 CLR 异常”。这是启用/禁用所有异常的一种非常快速的方法,您可以在知道恼人的 NullReferenceException 即将发生之前进行切换。

免责声明:我是我刚才提到的工具的共同创建者。
| 归档时间: |
|
| 查看次数: |
1231 次 |
| 最近记录: |