我是靠谱客的博主 爱撒娇手套,最近开发中收集的这篇文章主要介绍【C#编程最佳实践 十四】VS调试最佳实践,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

Debug和Release分状态调试

#if !DEBUG
     Console.WriteLine("Release:TML发布的时候最帅了");
#else
      Console.WriteLine("DEBUG:TML调试的时候最帅了");
#endif

如果运行模式是Release,也就是!DEBUG则会输出“Release:TML发布的时候最帅了”。如果运行模式是Debug,则代码会输出“DEBUG:TML调试的时候最帅了”。 Debug和Release的设置和基本原理我在《深入理解CLR》中详细论述过:

传送门 https://blog.csdn.net/sinat_33087001/article/details/80185199

那么什么时候用这种方式调试呢?
这里写图片描述
当出现这种情况,代码在线程里,这个时候打断点跳进去的时候不利于观察,这个时候可以设置在DEBUG状态下不执行线程,只执行线程内部代码,方便调试,在发布的时候(Release)加上线程部分的内容,不影响发版上线。

通过日志查看异常信息

try{
  foreach(var item1 in listA){
       foreach(var item2 in listA){
               item1==item2;
        }
  }
}
catch (Exception ex)
{
  logger.Error("元数据异步校验失败", ex);
}

上例中双层循环里报错了,可能两个list有5000多次加起来,一遍一遍的断点调试并没有效果,所以,这个时候打印日志和堆栈信息就很有必要了。

最后

以上就是爱撒娇手套为你收集整理的【C#编程最佳实践 十四】VS调试最佳实践的全部内容,希望文章能够帮你解决【C#编程最佳实践 十四】VS调试最佳实践所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(38)

评论列表共有 0 条评论

立即
投稿
返回
顶部