什么是语法以及需要导入哪个命名空间/类?如果可能,请给我示例代码。这将是非常有帮助的。
答案 0 :(得分:41)
我还想查看是否附加了调试器 - 如果在没有调试器的情况下调用Debugger.Break,它会提示用户是否要附加调试器。根据您想要的行为,您可能只想在已经连接的情况下调用Debugger.Break()
using System.Diagnostics;
//.... in the method:
if( Debugger.IsAttached) //or if(!Debugger.IsAttached)
{
Debugger.Break();
}
答案 1 :(得分:21)
将以下内容放在您需要的地方:
System.Diagnostics.Debugger.Break();
答案 2 :(得分:8)
http://msdn.microsoft.com/en-us/library/system.diagnostics.debugger.break.aspx
#if DEBUG
System.Diagnostics.Debugger.Break();
#endif
答案 3 :(得分:3)
您可以使用System.Diagnostics.Debugger.Break()
在特定位置中断...这可以在调试服务等情况下提供帮助。
答案 4 :(得分:2)
来自@Philip Rieck和@John的答案略有不同。
约翰的......
#if DEBUG
System.Diagnostics.Debugger.Break();
#endif
仅在使用DEBUG条件编译符号集进行编译时才有效。
菲利普的答案......
if( Debugger.IsAttached) //or if(!Debugger.IsAttached)
{
Debugger.Break();
}
适用于任何调试器,因此您也会给任何黑客带来一些惊吓。
另请注意SecurityException
它可以抛出,所以不要让这些代码流入野外。
另一个不......的原因
如果未附加调试器,则会询问用户是否要附加调试器 调试器。如果用户说“是”,则启动调试器。如果是调试器 附加,调试器用用户断点事件发出信号,并且 调试器暂停执行进程,就像调试器一样 断点被击中了。
来自https://msdn.microsoft.com/en-us/library/system.diagnostics.debugger.break(v=vs.110).aspx