TraceSwitch.Level Property


The .NET API Reference documentation has a new home. Visit the .NET API Browser on to see the new experience.

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

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

member Level : TraceLevel with get, set

Property Value

Type: System.Diagnostics.TraceLevel

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

Exception Condition

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:

      <add name="mySwitch" value="0" />
      <add name="myNewSwitch" value="3" />
      <remove name="mySwitch" />

In the .NET Framework version 2.0, you can use text to specify the value for a switch. For example, true for a BooleanSwitch or the text representing an enumeration value, such as Error for a TraceSwitch. The line <add name="mySwitch" value="Error" /> is equivalent to <add name="mySwitch" value="1" />.

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.

No code example is currently available or this language may not be supported.


for operating with unmanaged code. Associated enumeration: SecurityPermissionFlag.UnmanagedCode Security action: LinkDemand.

.NET Framework
Available since 1.1
Return to top