这两项任务需要Debugger类来完成。System.Diagnostics.Debugger类型可以允许我们和调试器互交。Debugger类型的成员不多也容易理解。(MSDN)
首先要通过IsAttached属性判断是当前进程是否附加了调试器。如果有的话,接着通过IsLogging方法判断是否当前附加调试器支持日志记录。如果两者都成立,变可以安全通过Log方法来记录消息了。Log的内容会显示在在Visual Studio输出窗口中。
最后Debugger.Break方法会迫使调试器在运行当前代码时做断点处理。
代码:
//+ using System.Diagnostics; //判断是否附加调试器 //判断调试器是否支持消息日志 if (Debugger.IsAttached && Debugger.IsLogging()) { //记录 Debugger.Log(1, "开玩笑", "这段代码得好好调试!"); //添加断点 Debugger.Break(); }
调试运行上面代码(可以直接按F5),Visual Studio会在Debugger.Break()这行代码上调试断点,而且输出窗口上会有我们自定义的信息,如下图: