Export (0) Print
Expand All

TraceSwitch.Level Property

Gets or sets the trace level that determines the messages the switch allows.

Namespace: System.Diagnostics
Assembly: System (in system.dll)

public TraceLevel Level { get; set; }
/** @property */
public TraceLevel get_Level ()

/** @property */
public void set_Level (TraceLevel value)

public function get Level () : TraceLevel

public function set Level (value : TraceLevel)

Property Value

One of the TraceLevel values that that specifies the level of messages that are allowed by the switch.

Exception typeCondition

ArgumentException

Level is set to a value that is not one of the TraceLevel values.

To set the level of your TraceSwitch, edit the configuration file that corresponds to the name of your application. In this file, you can add a switch and set its value, remove a switch, or clear all the switches previously set by the application. The configuration file should be formatted like the following example:

<configuration>
  <system.diagnostics>
    <switches>
      <add name="mySwitch" value="0" />
      <add name="myNewSwitch" value="3" />
      <remove name="mySwitch" />
      <clear/>
    </switches>
  </system.diagnostics>
</configuration>

When the TraceSwitch constructor cannot find initial switch settings in the configuration file, the Level property of the new switch is set to TraceLevel.Off.

Setting this property updates the TraceError, TraceWarning, TraceInfo, and TraceVerbose properties to reflect the new value.

The following code example creates a new TraceSwitch and uses the switch to determine whether to print error messages. The switch is created at the class level. MyMethod writes the first error message if the Level property is set to TraceLevel.Error or higher. However, MyMethod does not write the second error message if the Level is less than TraceLevel.Verbose.

//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 static TraceSwitch mySwitch = 
    new TraceSwitch("General", "Entire Application");

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

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

public static void main(String[] args)
{
    // Run the method that prints error messages based on the switch level.
    MyMethod();
} //main

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

The .NET Framework does not support all versions of every platform. For a list of the supported versions, see System Requirements.

.NET Framework

Supported in: 2.0, 1.1, 1.0

Community Additions

ADD
Show:
© 2014 Microsoft