BooleanSwitch Klasse

Definition

Bietet einen EIN/AUS-Schalter, der die Debugging- und Ablaufverfolgungsausgabe steuert.Provides a simple on/off switch that controls debugging and tracing output.

public ref class BooleanSwitch : System::Diagnostics::Switch
public class BooleanSwitch : System.Diagnostics.Switch
type BooleanSwitch = class
    inherit Switch
Public Class BooleanSwitch
Inherits Switch
Vererbung
BooleanSwitch

Beispiele

Im folgenden Beispiel wird eine BooleanSwitch erstellt und der-Schalter verwendet, um zu bestimmen, ob eine Fehlermeldung gedruckt werden soll.The following example creates a BooleanSwitch and uses the switch to determine whether to print an error message. Sie erstellen den Switch auf Klassenebene.You create the switch at the class level. Die Main-Methode übergibt den Speicherort an MyMethod, der eine Fehlermeldung ausgibt und in der der Fehler aufgetreten ist.The Main method passes its location to MyMethod, which prints an error message and where the error occurred.

public ref class BooleanSwitchTest
{
private:

   /* Create a BooleanSwitch for data.*/
   static BooleanSwitch^ dataSwitch = gcnew BooleanSwitch( "Data","DataAccess module" );

public:
   static void MyMethod( String^ location )
   {
      
      //Insert code here to handle processing.
      if ( dataSwitch->Enabled )
            Console::WriteLine( "Error happened at {0}", location );
   }

};

int main()
{
   
   //Run the method which writes an error message specifying the location of the error.
   BooleanSwitchTest::MyMethod( "in main" );
}

// Class level declaration.
/* Create a BooleanSwitch for data.*/
static BooleanSwitch dataSwitch = new BooleanSwitch("Data", "DataAccess module");

static public void MyMethod(string location) {
   //Insert code here to handle processing.
   if(dataSwitch.Enabled)
      Console.WriteLine("Error happened at " + location);
}

public static void Main(string[] args) {
   //Run the method which writes an error message specifying the location of the error.
   MyMethod("in Main");
}

' Class level declaration.
' Create a BooleanSwitch for data. 
Private Shared dataSwitch As New BooleanSwitch("Data", "DataAccess module")


Public Shared Sub MyMethod(location As String)
    ' Insert code here to handle processing.
    If dataSwitch.Enabled Then
        Console.WriteLine(("Error happened at " + location))
    End If
End Sub

' Entry point which delegates to C-style main function.
Public Overloads Shared Sub Main()
    Main(System.Environment.GetCommandLineArgs())
End Sub
 
Overloads Public Shared Sub Main(args() As String)
    ' Run the method which writes an error message specifying the location of the error.
    MyMethod("in Main")
End Sub

Hinweise

Sie können einen booleschen Ablauf Verfolgungs Schalter verwenden, um Nachrichten basierend auf ihrer Wichtigkeit zu aktivieren oder zu deaktivieren.You can use a Boolean trace switch to enable or disable messages based on their importance. Verwenden Sie die Enabled-Eigenschaft, um den aktuellen Wert des Schalters zu erhalten.Use the Enabled property to get the current value of the switch.

Sie können ein BooleanSwitch über die Anwendungs Konfigurationsdatei aktivieren oder deaktivieren und dann den konfigurierten BooleanSwitch Wert in der Anwendung verwenden.You can enable or disable a BooleanSwitch through the application configuration file and then use the configured BooleanSwitch value in your application. Alternativ können Sie einen BooleanSwitch in Ihrem Code erstellen und die Enabled-Eigenschaft direkt festlegen, um einen bestimmten Code Abschnitt zu instrumentieren.Alternately, you can create a BooleanSwitch in your code and set the Enabled property directly to instrument a specific section of code.

Um einen BooleanSwitchzu konfigurieren, bearbeiten Sie die Konfigurationsdatei, die dem Namen der Anwendung entspricht.To configure a BooleanSwitch, edit the configuration file that corresponds to the name of your application. Innerhalb dieser Datei können Sie einen Schalter hinzufügen oder entfernen, den Wert eines Schalters festlegen oder alle Switches löschen, die zuvor von der Anwendung festgelegt wurden.Within this file, you can add or remove a switch, set a switch's value, or clear all the switches previously set by the application. Die Konfigurationsdatei sollte wie im folgenden Beispiel formatiert sein.The configuration file should be formatted like the following example.

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

Dieser Beispiel Konfigurations Abschnitt definiert eine BooleanSwitch, bei der die DisplayName-Eigenschaft auf mySwitch festgelegt ist und der Enabled Wert auf truefestgelegt ist.This example configuration section defines a BooleanSwitch with the DisplayName property set to mySwitch and the Enabled value set to true. In Ihrer Anwendung können Sie den konfigurierten switchwert verwenden, indem Sie eine BooleanSwitch mit dem gleichen Namen erstellen, wie im folgenden Codebeispiel gezeigt.Within your application, you can use the configured switch value by creating a BooleanSwitch with the same name, as shown in the following code example.

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

public:
    static void Main( )
    {
        //...
        Console::WriteLine("Boolean switch {0} configured as {1}",
            boolSwitch->DisplayName, ((Boolean^)boolSwitch->Enabled)->ToString());
        if (boolSwitch->Enabled)
        {
            //...
        }
    }
private static BooleanSwitch boolSwitch = new BooleanSwitch("mySwitch",
    "Switch in config file");

public static void Main( )
{
    //...
    Console.WriteLine("Boolean switch {0} configured as {1}",
        boolSwitch.DisplayName, boolSwitch.Enabled.ToString());
    if (boolSwitch.Enabled)
    {
        //...
    }
}
Private Shared boolSwitch As new BooleanSwitch("mySwitch", _
    "Switch in config file")

Public Shared Sub Main( )
    '...
    Console.WriteLine("Boolean switch {0} configured as {1}",
        boolSwitch.DisplayName, boolSwitch.Enabled.ToString())
    If boolSwitch.Enabled = True Then
        '...
    End If
End Sub

Standardmäßig wird die Enabled-Eigenschaft mit dem in der Konfigurationsdatei angegebenen Wert festgelegt.By default, the Enabled property is set using the value specified in the configuration file. Konfigurieren Sie den Schalter mit dem Wert 0, um die Enabled-Eigenschaft auf falsefestzulegen. Konfigurieren Sie den Switch mit einem Wert ungleich NULL, um die Enabled-Eigenschaft auf truefestzulegen.Configure the switch with a value of 0 to set the Enabled property to false; configure the switch with a nonzero value to set the Enabled property to true. Wenn der BooleanSwitch-Konstruktor keine anfänglichen Switcheinstellungen in der Konfigurationsdatei finden kann, wird die Enabled-Eigenschaft des neuen Schalters standardmäßig auf false festgelegt.If the BooleanSwitch constructor cannot find initial switch settings in the configuration file, the Enabled property of the new switch is set to false by default.

Sie müssen die Ablauf Verfolgung oder das Debuggen zur Verwendung eines Schalters aktivierenYou must enable tracing or debugging to use a switch. Die folgende Syntax ist compilerspezifisch.The following syntax is compiler specific. Wenn Sie andere Compiler als C# oder Visual Basic verwenden, finden Sie in der Dokumentation Ihres Compiler weitere Informationen.If you use compilers other than C# or Visual Basic, refer to the documentation for your compiler.

  • Um das Debuggen in C#zu aktivieren, fügen Sie das /d:DEBUG-Flag zur Compilerbefehlszeile hinzu, wenn Sie den Code kompilieren, oder Sie können #define DEBUG am Anfang der Datei hinzufügen.To enable debugging in C#, add the /d:DEBUG flag to the compiler command line when you compile your code, or you can add #define DEBUG to the top of your file. Fügen Sie in Visual Basic der Compilerbefehlszeile das /d:DEBUG=True-Flag hinzu.In Visual Basic, add the /d:DEBUG=True flag to the compiler command line.

  • Fügen Sie zum Aktivieren C#der Ablauf Verfolgung in der Compilerbefehlszeile das /d:TRACE-Flag hinzu, wenn Sie den Code kompilieren, oder fügen Sie #define TRACE am Anfang der Datei hinzu.To enable tracing in C#, add the /d:TRACE flag to the compiler command line when you compile your code, or add #define TRACE to the top of your file. Fügen Sie in Visual Basic der Compilerbefehlszeile das /d:TRACE=True-Flag hinzu.In Visual Basic, add the /d:TRACE=True flag to the compiler command line.

Hinweis

Diese Debug-und Trace-Compilerschalter sind nicht erforderlich, wenn die BooleanSwitch-Klasse isoliert verwendet wird.These debug and trace compiler switches are not required when using the BooleanSwitch class in isolation. Sie sind nur in Verbindung mit Trace oder Debug Methoden erforderlich, die bedingt kompiliert werden.They are only required in conjunction with Trace or Debug methods that are conditionally compiled.

Weitere Informationen zum Instrumentieren Ihrer Anwendung finden Sie unter Debug und Trace.For more information on instrumenting your application, see Debug and Trace. Weitere Informationen zum Konfigurieren und Verwenden von Ablauf Verfolgungs Schaltern finden Sie unter Ablauf Verfolgungs Schalter.For more information about configuring and using trace switches, see Trace Switches.

Hinweis

Um die Leistung zu verbessern, können Sie BooleanSwitch Member in der Klasse static.To improve performance, you can make BooleanSwitch members static in your class.

Konstruktoren

BooleanSwitch(String, String)

Initialisiert eine neue Instanz der BooleanSwitch-Klasse mit dem angegebenen Anzeigenamen und der angegebenen Beschreibung.Initializes a new instance of the BooleanSwitch class with the specified display name and description.

BooleanSwitch(String, String, String)

Initialisiert eine neue Instanz der BooleanSwitch-Klasse mit dem angegebenen Anzeigenamen, der angegebenen Beschreibung und dem angegebenen Standardschalterwert.Initializes a new instance of the BooleanSwitch class with the specified display name, description, and default switch value.

Eigenschaften

Attributes

Ruft die benutzerdefinierten Schalterattribute ab, die in der Anwendungskonfigurationsdatei definiert sind.Gets the custom switch attributes defined in the application configuration file.

(Geerbt von Switch)
Description

Ruft eine Beschreibung des Schalters ab.Gets a description of the switch.

(Geerbt von Switch)
DisplayName

Ruft einen Namen zum Bezeichnen des Schalters ab.Gets a name used to identify the switch.

(Geerbt von Switch)
Enabled

Ruft einen Wert ab, der angibt, ob der Schalter aktiviert oder deaktiviert ist, oder legt diesen fest.Gets or sets a value indicating whether the switch is enabled or disabled.

SwitchSetting

Ruft die aktuelle Einstellung des Schalters ab oder legt diese fest.Gets or sets the current setting for this switch.

(Geerbt von Switch)
Value

Ruft den Wert des Schalters ab oder legt diesen fest.Gets or sets the value of the switch.

(Geerbt von Switch)

Methoden

Equals(Object)

Ermittelt, ob das angegebene Objekt und das aktuelle Objekt gleich sind.Determines whether the specified object is equal to the current object.

(Geerbt von Object)
GetHashCode()

Dient als die Standard-HashfunktionServes as the default hash function.

(Geerbt von Object)
GetSupportedAttributes()

Ruft die benutzerdefinierten Attribute ab, die vom Schalter unterstützt werden.Gets the custom attributes supported by the switch.

(Geerbt von Switch)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Geerbt von Object)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Geerbt von Object)
OnSwitchSettingChanged()

Wird aufgerufen, wenn die SwitchSetting-Eigenschaft geändert wird.Invoked when the SwitchSetting property is changed.

(Geerbt von Switch)
OnValueChanged()

Bestimmt, ob der neue Wert der Value-Eigenschaft als boolescher Wert analysiert werden kann.Determines whether the new value of the Value property can be parsed as a Boolean value.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Geerbt von Object)

Gilt für:

Siehe auch