众所周知,自从.net中出现了特性(attribute)之后,代码变得更加简洁,可读性更强了,今天主要说一下Conditional特性,Conditional它主要是约束你的代码段在哪种条件下进行执行,我们今天主要针对DEBUG和TRACE这两个条件约束,它们可以当作是Conditional特性的输入参数,形式如下:
1 [Conditional("DEBUG")] 2 protected static void LogDebugInfo() 3 { 4 //在debug模式输出一些调试信息 5 Console.WriteLine("只在调试模式输出本行"); 6 }
1 [Conditional("TRACE")] 2 protected static void LogTraceInfo() 3 { 4 //在trace模式输出一些调试信息 5 Console.WriteLine("只在TRACE关键字被选中时输出本行"); 6 }
而上面两个代码段中提到“TRACE关键字”,这个东西在哪里设置呢?说它之前,我们需要知道程序调试的两种方式,debug和release,你可以对这两种方式分别进行DEBUG和TRACE关
键字的设置,可以通过项目的属性=>“生成”进行设置,如图:
这将DEBUG和TRACE分别赋给了debug模式和release模式,这样设置的好处是,可以看两种模式进行分离,debug可以看作调试模式,release可以看作稳定(生产,上线)模式,有时我们
需要在上线后记录一些程序的日志信息这时可以使用这种方法,呵呵。
本文转自博客园张占岭(仓储大叔)的博客,原文链接:基础才是重中之重~Conditional特性使代码根据条件在debug或者release模式中执行,如需转载请自行联系原博主。