BooleanSwitch Classe
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Fournit un simple commutateur marche/arrêt qui contrôle le débogage et la sortie de suivi.
public ref class BooleanSwitch : System::Diagnostics::Switch
public class BooleanSwitch : System.Diagnostics.Switch
type BooleanSwitch = class
inherit Switch
Public Class BooleanSwitch
Inherits Switch
- Héritage
Exemples
L’exemple suivant crée un BooleanSwitch et utilise le commutateur pour déterminer s’il faut imprimer un message d’erreur. Vous créez le commutateur au niveau de la classe. La Main
méthode transmet son emplacement à MyMethod
, qui imprime un message d’erreur et l’emplacement où l’erreur s’est produite.
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
Remarques
Vous pouvez utiliser un commutateur de suivi booléen pour activer ou désactiver les messages en fonction de leur importance. Utilisez la Enabled propriété pour obtenir la valeur actuelle du commutateur.
Vous pouvez créer un BooleanSwitch dans votre code et définir la Enabled propriété directement pour instrumenter une section spécifique du code.
Pour les applications .NET Framework uniquement, vous pouvez également activer ou désactiver un via le fichier de configuration de BooleanSwitch l’application, puis utiliser la valeur configurée BooleanSwitch dans votre application. Pour configurer un BooleanSwitch, modifiez le fichier de configuration qui correspond au nom de votre application. Dans ce fichier, vous pouvez ajouter ou supprimer un commutateur, définir la valeur d’un commutateur ou effacer tous les commutateurs précédemment définis par l’application. Le fichier de configuration doit être mis en forme comme dans l’exemple suivant.
<configuration>
<system.diagnostics>
<switches>
<add name="mySwitch" value="1"/>
</switches>
</system.diagnostics>
</configuration>
Cet exemple de section de configuration définit un BooleanSwitch avec la DisplayName propriété définie sur mySwitch
et la Enabled valeur définie sur true
. Dans votre application .NET Framework, vous pouvez utiliser la valeur de commutateur configurée en créant un BooleanSwitch avec le même nom, comme illustré dans l’exemple de code suivant.
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
Pour les applications .NET Core et .NET 5+, la Enabled propriété du nouveau commutateur est définie false
sur par défaut.
Pour les applications .NET Framework, la Enabled propriété est définie à l’aide de la valeur spécifiée dans le fichier de configuration. Configurez le commutateur avec la valeur 0 pour définir la Enabled propriété sur false
; configurez le commutateur avec une valeur différente de zéro pour définir la Enabled propriété sur true
. Si le BooleanSwitch constructeur ne trouve pas les paramètres de commutateur initiaux dans le fichier de configuration, la Enabled propriété du nouveau commutateur est définie sur false
.
Vous devez activer le suivi ou le débogage pour utiliser un commutateur. La syntaxe suivante est propre au compilateur. Si vous utilisez des compilateurs autres que C# ou Visual Basic, reportez-vous à la documentation de votre compilateur.
Pour activer le débogage en C#, ajoutez l’indicateur
/d:DEBUG
à la ligne de commande du compilateur lorsque vous compilez votre code, ou vous pouvez ajouter#define DEBUG
en haut de votre fichier. En Visual Basic, ajoutez l’indicateur/d:DEBUG=True
à la ligne de commande du compilateur.Pour activer le suivi en C#, ajoutez l’indicateur
/d:TRACE
à la ligne de commande du compilateur lorsque vous compilez votre code ou ajoutez#define TRACE
en haut de votre fichier. En Visual Basic, ajoutez l’indicateur/d:TRACE=True
à la ligne de commande du compilateur.
Notes
Ces commutateurs de débogage et de compilateur de trace ne sont pas nécessaires lors de l’utilisation de la BooleanSwitch classe en isolation. Elles sont uniquement requises conjointement avec Trace les méthodes ou Debug qui sont compilées de manière conditionnelle.
Pour plus d’informations sur l’instrumentation de votre application, consultez Debug et Trace. Pour plus d’informations sur la configuration et l’utilisation des commutateurs de trace, consultez Commutateurs de suivi.
Notes
Pour améliorer les performances, vous pouvez créer des BooleanSwitch membres static
dans votre classe.
Constructeurs
BooleanSwitch(String, String) |
Initialise une nouvelle instance de la classe BooleanSwitch avec le nom d’affichage et la description spécifiés. |
BooleanSwitch(String, String, String) |
Initialise une nouvelle instance de la classe BooleanSwitch avec le nom complet, la description et la valeur de commutateur par défaut spécifiés. |
Propriétés
Attributes |
Obtient les attributs de commutateur personnalisés définis dans le fichier de configuration de l'application. (Hérité de Switch) |
DefaultValue |
Obtient la valeur par défaut affectée dans le constructeur. (Hérité de Switch) |
Description |
Obtient une description du commutateur. (Hérité de Switch) |
DisplayName |
Obtient un nom utilisé pour identifier le commutateur. (Hérité de Switch) |
Enabled |
Obtient ou définit une valeur qui indique si le commutateur est activé ou désactivé. |
SwitchSetting |
Obtient ou définit le paramètre en cours pour ce commutateur. (Hérité de Switch) |
Value |
Obtient ou définit la valeur du commutateur. (Hérité de Switch) |
Méthodes
Equals(Object) |
Détermine si l'objet spécifié est égal à l'objet actuel. (Hérité de Object) |
GetHashCode() |
Fait office de fonction de hachage par défaut. (Hérité de Object) |
GetSupportedAttributes() |
Obtient les attributs personnalisés pris en charge par le commutateur. (Hérité de Switch) |
GetType() |
Obtient le Type de l'instance actuelle. (Hérité de Object) |
MemberwiseClone() |
Crée une copie superficielle du Object actuel. (Hérité de Object) |
OnSwitchSettingChanged() |
Appelé lorsque la propriété SwitchSetting a été modifiée. (Hérité de Switch) |
OnValueChanged() |
Détermine si la nouvelle valeur de la propriété Value peut être analysée en tant que valeur booléenne. |
OnValueChanged() |
Appelé lorsque la propriété Value a été modifiée. (Hérité de Switch) |
Refresh() |
Actualise les données de configuration de suivi. (Hérité de Switch) |
ToString() |
Retourne une chaîne qui représente l'objet actuel. (Hérité de Object) |