BooleanSwitch Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce un'opzione di attivazione/disattivazione che controlla l'output del debug e di traccia.
public ref class BooleanSwitch : System::Diagnostics::Switch
public class BooleanSwitch : System.Diagnostics.Switch
type BooleanSwitch = class
inherit Switch
Public Class BooleanSwitch
Inherits Switch
- Ereditarietà
Esempio
Nell'esempio seguente viene creato un oggetto BooleanSwitch e viene usato l'opzione per determinare se stampare un messaggio di errore. Si crea l'opzione a livello di classe. Il Main
metodo passa il percorso a MyMethod
, che stampa un messaggio di errore e dove si è verificato l'errore.
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
Commenti
È possibile usare un commutatore di traccia booleano per abilitare o disabilitare i messaggi in base alla loro importanza. Utilizzare la Enabled proprietà per ottenere il valore corrente dell'opzione.
È possibile creare un BooleanSwitch oggetto nel codice e impostare la Enabled proprietà direttamente per instrumentare una sezione specifica del codice.
Solo per le app .NET Framework è possibile abilitare o disabilitare un BooleanSwitch tramite il file di configurazione dell'applicazione e quindi usare il valore configurato BooleanSwitch nell'applicazione. Per configurare un BooleanSwitchoggetto , modificare il file di configurazione corrispondente al nome dell'applicazione. All'interno di questo file è possibile aggiungere o rimuovere un'opzione, impostare il valore di un commutatore o cancellare tutte le opzioni impostate in precedenza dall'applicazione. Il file di configurazione deve essere formattato come l'esempio seguente.
<configuration>
<system.diagnostics>
<switches>
<add name="mySwitch" value="1"/>
</switches>
</system.diagnostics>
</configuration>
Questa sezione di configurazione di esempio definisce un BooleanSwitch oggetto con la DisplayName proprietà impostata su mySwitch
e il Enabled valore impostato su true
. All'interno dell'applicazione .NET Framework è possibile usare il valore del commutatore configurato creando un BooleanSwitch oggetto con lo stesso nome, come illustrato nell'esempio di codice seguente.
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
Per le app .NET Core e .NET 5+ la Enabled proprietà del nuovo commutatore è impostata su false
per impostazione predefinita.
Per le app .NET Framework, la Enabled proprietà viene impostata usando il valore specificato nel file di configurazione. Configurare l'opzione con un valore pari a 0 per impostare la Enabled proprietà su false
; configurare l'opzione con un valore diverso da zero per impostare la Enabled proprietà su true
. Se il BooleanSwitch costruttore non riesce a trovare le impostazioni iniziali del commutatore nel file di configurazione, la Enabled proprietà del nuovo commutatore è impostata su false
.
È necessario abilitare la traccia o il debug per usare un commutatore. La sintassi seguente è specifica del compilatore. Se si usano compilatori diversi da C# o Visual Basic, vedere la documentazione del compilatore.
Per abilitare il debug in C#, aggiungere il flag alla riga di comando del compilatore quando si compila il
/d:DEBUG
codice oppure aggiungere#define DEBUG
alla parte superiore del file. In Visual Basic aggiungere il/d:DEBUG=True
flag alla riga di comando del compilatore.Per abilitare la traccia in C#, aggiungere il flag alla riga di comando del compilatore quando si compila il
/d:TRACE
codice o aggiungere#define TRACE
alla parte superiore del file. In Visual Basic aggiungere il/d:TRACE=True
flag alla riga di comando del compilatore.
Nota
Queste opzioni del compilatore di debug e traccia non sono necessarie quando si usa la BooleanSwitch classe in isolamento. Sono necessari solo in combinazione con Trace o Debug metodi compilati in modo condizionale.
Per altre informazioni sulla strumentazione dell'applicazione, vedere Debug e Trace. Per altre informazioni sulla configurazione e sull'uso di commutatori di traccia, vedere Commutatori di traccia.
Nota
Per migliorare le prestazioni, è possibile creare BooleanSwitch membri static
nella classe.
Costruttori
BooleanSwitch(String, String) |
Inizializza una nuova istanza della classe BooleanSwitch con il nome visualizzato e la descrizione specificati. |
BooleanSwitch(String, String, String) |
Inizializza una nuova istanza della classe BooleanSwitch con il nome visualizzato, la descrizione e il valore di opzione predefinito specificati. |
Proprietà
Attributes |
Ottiene gli attributi di opzione personalizzati definiti nel file di configurazione dell'applicazione. (Ereditato da Switch) |
DefaultValue |
Ottiene il valore predefinito assegnato nel costruttore. (Ereditato da Switch) |
Description |
Ottiene una descrizione dell'opzione. (Ereditato da Switch) |
DisplayName |
Ottiene un nome utilizzato per identificare l'opzione. (Ereditato da Switch) |
Enabled |
Ottiene o imposta un valore che indica se l'opzione è abilitata o meno. |
SwitchSetting |
Ottiene o imposta il nome corrente per questa opzione. (Ereditato da Switch) |
Value |
Ottiene o imposta il valore dell'opzione. (Ereditato da Switch) |
Metodi
Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
GetSupportedAttributes() |
Ottiene gli attributi personalizzati supportati dall'opzione. (Ereditato da Switch) |
GetType() |
Ottiene l'oggetto Type dell'istanza corrente. (Ereditato da Object) |
MemberwiseClone() |
Crea una copia superficiale dell'oggetto Object corrente. (Ereditato da Object) |
OnSwitchSettingChanged() |
Viene richiamato quando si modifica la proprietà SwitchSetting. (Ereditato da Switch) |
OnValueChanged() |
Determina se il nuovo valore della proprietà Value può essere analizzato come valore booleano. |
OnValueChanged() |
Viene richiamato quando si modifica la proprietà Value. (Ereditato da Switch) |
Refresh() |
Aggiorna i dati configurazione di traccia. (Ereditato da Switch) |
ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |