在我web.config
我:如何以编程方式获取当前跟踪开关?
<system.diagnostics>
<switches>
<add name="logLevelSwitch" value="1" />
</switches>
</system.diagnostics>
有没有办法,我可以打电话的方式,例如:
System.Diagnostics.TraceSwitch["logLevelSwitch"]
得到当前的价值?
在我web.config
我:如何以编程方式获取当前跟踪开关?
<system.diagnostics>
<switches>
<add name="logLevelSwitch" value="1" />
</switches>
</system.diagnostics>
有没有办法,我可以打电话的方式,例如:
System.Diagnostics.TraceSwitch["logLevelSwitch"]
得到当前的价值?
一旦你在你的web.config
文件中定义的开关量,很容易被具有相同的名称创建一个TraceSwitch
让您的应用程序这个值:
private static TraceSwitch logSwitch = new TraceSwitch("logLevelSwitch",
"This is your logLevelSwitch in the config file");
public static void Main(string[] args)
{
// you can get its properties value then:
Console.WriteLine("Trace switch {0} is configured as {1}",
logSwitch.DisplayName,
logSwitch.Level.ToString());
// and you can use it like this:
if (logSwitch.TraceError)
Trace.WriteLine("This is an error");
// or like this also:
Trace.WriteLineIf(logSwitch.TraceWarning, "This is a warning");
}
此外,对于这项工作,根据到文档:
您必须启用跟踪或调试才能使用开关。以下 语法是编译器特定的。如果使用C#以外的编译器或Visual Basic,请参阅编译器的文档。
要enabledebugging在C#中,
/d:DEBUG
标志添加到编译器命令行 当你编译代码,也可以添加到#define DEBUG
您 文件的顶部。在Visual Basic中,将/d:DEBUG=True
标志添加到编译器 命令行。要在C#中启用跟踪,请在编译代码时将
/d:TRACE
标志添加到 编译器命令行中,或者将#define TRACE
添加到文件的顶部。在Visual Basic中,将/d:TRACE=True
标志添加到编译器命令行。
不为我工作。总是说“关闭”。 –
@bilalfazlani看我的编辑是否有帮助 –
这很有帮助。谢谢! –
你有没有得到任何解决方案呢? –