TraceSwitch 构造函数

定义

初始化 TraceSwitch 类的新实例。

重载

TraceSwitch(String, String)

使用指定的显示名称和说明初始化 TraceSwitch 类的新实例。

TraceSwitch(String, String, String)

使用开关的指定显示名称、说明和默认值来初始化 TraceSwitch 类的新实例。

TraceSwitch(String, String)

Source:
TraceSwitch.cs
Source:
TraceSwitch.cs
Source:
TraceSwitch.cs

使用指定的显示名称和说明初始化 TraceSwitch 类的新实例。

public:
 TraceSwitch(System::String ^ displayName, System::String ^ description);
public TraceSwitch (string displayName, string? description);
public TraceSwitch (string displayName, string description);
new System.Diagnostics.TraceSwitch : string * string -> System.Diagnostics.TraceSwitch
Public Sub New (displayName As String, description As String)

参数

displayName
String

要在用户界面上显示的名称。

description
String

切换描述。

示例

下面的代码示例创建一个新的 TraceSwitch ,并使用 开关确定是否打印错误消息。 开关是在类级别创建的。 MyMethod 如果 Level 属性设置为 TraceLevel.Error 或更高,则写入第一条错误消息。 但是,如果 Level 小于 TraceLevel.VerboseMyMethod则 不会写入第二条错误消息。

   // Class-level declaration.
   /* Create a TraceSwitch to use in the entire application.*/
private:
   static TraceSwitch^ mySwitch = gcnew TraceSwitch( "General", "Entire Application" );

public:
   static void MyMethod()
   {
      // Write the message if the TraceSwitch level is set to Error or higher.
      if ( mySwitch->TraceError )
         Console::WriteLine( "My error message." );
      
      // Write the message if the TraceSwitch level is set to Verbose.
      if ( mySwitch->TraceVerbose )
         Console::WriteLine( "My second error message." );
   }

   static void main()
   {
      // Run the method that prints error messages based on the switch level.
      MyMethod();
   }
//Class-level declaration.
/* Create a TraceSwitch to use in the entire application.*/
static TraceSwitch mySwitch = new TraceSwitch("General", "Entire Application");

static public void MyMethod()
{
    // Write the message if the TraceSwitch level is set to Error or higher.
    if (mySwitch.TraceError)
        Console.WriteLine("My error message.");

    // Write the message if the TraceSwitch level is set to Verbose.
    if (mySwitch.TraceVerbose)
        Console.WriteLine("My second error message.");
}

public static void Main(string[] args)
{
    // Run the method that prints error messages based on the switch level.
    MyMethod();
}
' Class-level declaration.
' Create a TraceSwitch to use in the entire application. 
Private Shared mySwitch As New TraceSwitch("General", "Entire Application")    

Public Shared Sub MyMethod()
    ' Write the message if the TraceSwitch level is set to Error or higher.
    If mySwitch.TraceError Then
        Console.WriteLine("My error message.")
    End If 
    ' Write the message if the TraceSwitch level is set to Verbose.
    If mySwitch.TraceVerbose Then
        Console.WriteLine("My second error message.")
    End If
End Sub

Public Shared Sub Main()
    ' Run the method that prints error messages based on the switch level.
    MyMethod()
End Sub

注解

对于.NET Framework应用,若要设置 的TraceSwitch级别,请编辑与应用程序名称对应的配置文件。 在此文件中,可以添加开关并设置其值、删除开关或清除以前由应用程序设置的所有开关。 配置文件的格式应如以下示例所示:

<configuration>  
  <system.diagnostics>  
    <switches>  
      <add name="mySwitch" value="1" />  
    </switches>  
  </system.diagnostics>  
</configuration>  

还可以使用文本来指定开关的值。 例如, true 对于 BooleanSwitch 或表示枚举值的文本,例如 Error ,对于 TraceSwitch。 行 <add name="mySwitch" value="Error" /> 等于 <add name="mySwitch" value="1" />

在应用程序中,可以通过创建 TraceSwitch 具有相同名称的 来使用配置的交换机级别,如以下示例所示:

private:
    static TraceSwitch^ appSwitch = gcnew TraceSwitch("mySwitch",
        "Switch in config file");

public:
    static void Main(array<String^>^ args)
    {
        //...
        Console::WriteLine("Trace switch {0} configured as {1}",
        appSwitch->DisplayName, appSwitch->Level.ToString());
        if (appSwitch->TraceError)
        {
            //...
        }
    }
private static TraceSwitch appSwitch = new TraceSwitch("mySwitch",
    "Switch in config file");

public static void Main(string[] args)
{
    //...
    Console.WriteLine("Trace switch {0} configured as {1}",
    appSwitch.DisplayName, appSwitch.Level.ToString());
    if (appSwitch.TraceError)
    {
        //...
    }
}
Private Shared appSwitch As new TraceSwitch("mySwitch", _
    "Switch in config file")

Public Shared Sub Main(args As String())
    '...
    Console.WriteLine("Trace switch {0} configured as {1}",
    appSwitch.DisplayName, appSwitch.Level.ToString())
    If appSwitch.TraceError = True  Then
        '...
    End If
End Sub

此构造函数将 Level 新开关的 属性设置为 TraceLevel.Off。 或者,对于.NET Framework应用,开关设置是从配置文件获取的(如果可用)。

TraceSwitch 提供 TraceErrorTraceWarningTraceInfoTraceVerbose 属性来测试 Level 开关的 。 属性 Level 获取或设置开关的 TraceLevel

注意

若要提高性能,可以在 TraceSwitch 类中创建成员 static

另请参阅

适用于

TraceSwitch(String, String, String)

Source:
TraceSwitch.cs
Source:
TraceSwitch.cs
Source:
TraceSwitch.cs

使用开关的指定显示名称、说明和默认值来初始化 TraceSwitch 类的新实例。

public:
 TraceSwitch(System::String ^ displayName, System::String ^ description, System::String ^ defaultSwitchValue);
public TraceSwitch (string displayName, string? description, string defaultSwitchValue);
public TraceSwitch (string displayName, string description, string defaultSwitchValue);
new System.Diagnostics.TraceSwitch : string * string * string -> System.Diagnostics.TraceSwitch
Public Sub New (displayName As String, description As String, defaultSwitchValue As String)

参数

displayName
String

要在用户界面上显示的名称。

description
String

切换描述。

defaultSwitchValue
String

切换的默认值。

注解

参数 displayName 用于设置属性的值 DisplayNamedescription 参数用于设置属性的值 Description ,参数 defaultSwitchValue 保存为字段,并用于在第一次引用时初始化 Value 属性。 有关详细信息和代码示例, TraceSwitch(String, String) 请参阅 构造函数。

适用于