WEB开发网
开发学院软件开发C语言 Effective C# 原则36:利用.Net运行时诊断 阅读

Effective C# 原则36:利用.Net运行时诊断

 2009-02-19 08:15:52 来源:WEB开发网   
核心提示: <?xml version="1.0" encoding="utf-8" ?><configuration></configuration>.Net框架使用预定义的关键字来控制框架中一些类的行为,另外,Effect

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
</configuration>

.Net框架使用预定义的关键字来控制框架中一些类的行为。另外,你可以定义你自己的配置关键字和值。

你可以组合输出开关和Trace.WriteLineIf()方法来控制应用程序的输出。你可以在应用程序外以默认的方式关闭这个输出,以便应用程序得到最好的性能。当发现问题时,你可以打开这个输出用于诊断和修正在实际中遇到的问题。WriteLineIf()只有在表达式为真时才输出:

bool _printDiagnostics = true;
Trace.WriteLineIf( _printDiagnostics,
 "Printing Diagnostics Today", "MySubSystem" );

你所创建的输出开关用于控制输出的级别,一个输出开关可以是由应用程序配置文件定义的变量,可以是五种状态之一:关闭(Off),错误(Error),警告(Warning),信息(Info)和详细(Verbose)。这些状态是环境的一部份,而且它们的值可以是从0到4。这样你就可能为所有的子系统信息创建一个控制。定义一个输出开关类然后初始化它就可以创建一个开关了:

static private TraceSwitch librarySwitch = new
 TraceSwitch( "MyAssembly",
 "The switch for this assembly" );

第一个参数是开关显示的名字,第二个参数是描述。这样,在运行时可以在应用程序配置文件中配置它们的值。下面就把librarySwitch设置成Info:

<system.diagnostics>
 <switches>
  <add name="MyAssembly" value="3" />
 </switches>
</system.diagnostics>

上一页  1 2 3 4  下一页

Tags:Effective 原则 利用

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接