Clu*_*ess 19 .net c# visual-studio-2010 visual-studio visual-studio-debugging
我有一个小问题.有时当我调试应用程序时,我想在调试会话期间模拟从方法抛出的异常,但是没有办法做到这一点.我甚至无法将光标(指示当前行的黄色光标)拖动到异常块.在运行期间触发异常的唯一方法是更改当前代码行并编写我想要抛出的异常.这种方法并不好,因为我可能忘记在下次运行时将其更改回来.
小智 32
我发现在调试期间从方法中抛出异常的唯一真正可行的方法是从执行过程的脚下拉出变量.即设置一个即将用于null的变量,一旦执行就会明显抛出异常.但是,这不允许您抛出自定义异常(例如特定类型或消息).
对于特定的例外,我们需要根据之前的帖子修改代码.
Geo*_*ett 17
您可以使用条件编译:
#if DEBUG
throw new Exception("Test");
#endif
Run Code Online (Sandbox Code Playgroud)
编辑:有一个额外的条件:
#if DEBUG && ENABLETESTEXCEPTION
throw new Exception("Test")
#endif
Run Code Online (Sandbox Code Playgroud)
您可以使用上面的条件定义(项目属性 - >构建 - >条件编译符号)创建自定义配置(类似于发布/调试).
aba*_*hev 14
不幸的是,Visual Studio仍然不支持从立即窗口抛出异常.
同时不支持lambda表达式,匿名类型,集合初始化器等.仅限于.NET 2.0.
你也可以使用 Debug.Assert(false);
归档时间: |
|
查看次数: |
17527 次 |
最近记录: |