BooleanSwitch Kelas
Definisi
Penting
Beberapa informasi terkait produk prarilis yang dapat diubah secara signifikan sebelum dirilis. Microsoft tidak memberikan jaminan, tersirat maupun tersurat, sehubungan dengan informasi yang diberikan di sini.
Menyediakan sakelar aktif/nonaktif sederhana yang mengontrol output penelusuran kesalahan dan pelacakan.
public ref class BooleanSwitch : System::Diagnostics::Switch
public class BooleanSwitch : System.Diagnostics.Switch
type BooleanSwitch = class
inherit Switch
Public Class BooleanSwitch
Inherits Switch
- Warisan
Contoh
Contoh berikut membuat BooleanSwitch dan menggunakan sakelar untuk menentukan apakah akan mencetak pesan kesalahan. Anda membuat sakelar di tingkat kelas. Metode Main
meneruskan lokasinya ke MyMethod
, yang mencetak pesan kesalahan dan di mana kesalahan terjadi.
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
Keterangan
Anda dapat menggunakan sakelar pelacakan Boolean untuk mengaktifkan atau menonaktifkan pesan berdasarkan kepentingannya. Enabled Gunakan properti untuk mendapatkan nilai sakelar saat ini.
Anda dapat membuat BooleanSwitch dalam kode Anda dan mengatur Enabled properti langsung ke instrumen bagian kode tertentu.
Hanya untuk aplikasi .NET Framework, Anda juga dapat mengaktifkan atau menonaktifkan BooleanSwitch melalui file konfigurasi aplikasi lalu menggunakan nilai yang dikonfigurasi BooleanSwitch di aplikasi Anda. Untuk mengonfigurasi BooleanSwitch, edit file konfigurasi yang sesuai dengan nama aplikasi Anda. Dalam file ini, Anda dapat menambahkan atau menghapus sakelar, mengatur nilai sakelar, atau menghapus semua sakelar yang sebelumnya diatur oleh aplikasi. File konfigurasi harus diformat seperti contoh berikut.
<configuration>
<system.diagnostics>
<switches>
<add name="mySwitch" value="1"/>
</switches>
</system.diagnostics>
</configuration>
Bagian konfigurasi contoh ini menentukan BooleanSwitch dengan properti yang DisplayName diatur ke mySwitch
dan nilai diatur Enabled ke true
. Dalam aplikasi .NET Framework, Anda dapat menggunakan nilai sakelar yang dikonfigurasi dengan membuat BooleanSwitch dengan nama yang sama, seperti yang ditunjukkan dalam contoh kode berikut.
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
Untuk aplikasi .NET Core dan .NET 5+, Enabled properti sakelar baru diatur ke false
secara default.
Untuk aplikasi .NET Framework, Enabled properti diatur menggunakan nilai yang ditentukan dalam file konfigurasi. Konfigurasikan sakelar dengan nilai 0 untuk mengatur properti ke false
; konfigurasikan sakelar dengan nilai bukan nol untuk mengatur properti ke Enabledtrue
.Enabled BooleanSwitch Jika konstruktor tidak dapat menemukan pengaturan pengalihan awal dalam file konfigurasi, Enabled properti sakelar baru diatur ke false
.
Anda harus mengaktifkan pelacakan atau penelusuran kesalahan untuk menggunakan sakelar. Sintaks berikut adalah kompilator spesifik. Jika Anda menggunakan pengkompilasi selain C# atau Visual Basic, lihat dokumentasi untuk pengkompilasi Anda.
Untuk mengaktifkan penelusuran kesalahan di C#, tambahkan
/d:DEBUG
bendera ke baris perintah pengkompilasi saat Mengkompilasi kode, atau Anda dapat menambahkan#define DEBUG
ke bagian atas file Anda. Di Visual Basic, tambahkan/d:DEBUG=True
bendera ke baris perintah pengkompilasi.Untuk mengaktifkan pelacakan di C#, tambahkan
/d:TRACE
bendera ke baris perintah pengkompilasi saat Anda mengkompilasi kode, atau menambahkan#define TRACE
ke bagian atas file Anda. Di Visual Basic, tambahkan/d:TRACE=True
bendera ke baris perintah pengkompilasi.
Catatan
Sakelar kompilator debug dan pelacakan ini tidak diperlukan saat menggunakan BooleanSwitch kelas dalam isolasi. Mereka hanya diperlukan bersama dengan Trace metode atau Debug yang dikompilasi secara kondisional.
Untuk informasi selengkapnya tentang melengkapi aplikasi Anda, lihat Debug dan Trace. Untuk informasi selengkapnya tentang mengonfigurasi dan menggunakan sakelar pelacakan, lihat Sakelar Pelacakan.
Catatan
Untuk meningkatkan performa, Anda dapat membuat BooleanSwitch anggota static
di kelas Anda.
Konstruktor
BooleanSwitch(String, String) |
Menginisialisasi instans BooleanSwitch baru kelas dengan nama tampilan dan deskripsi yang ditentukan. |
BooleanSwitch(String, String, String) |
Menginisialisasi instans BooleanSwitch baru kelas dengan nama tampilan, deskripsi, dan nilai sakelar default yang ditentukan. |
Properti
Attributes |
Mendapatkan atribut sakelar kustom yang ditentukan dalam file konfigurasi aplikasi. (Diperoleh dari Switch) |
DefaultValue |
Mendapatkan nilai default yang ditetapkan di konstruktor. (Diperoleh dari Switch) |
Description |
Mendapatkan deskripsi sakelar. (Diperoleh dari Switch) |
DisplayName |
Mendapatkan nama yang digunakan untuk mengidentifikasi sakelar. (Diperoleh dari Switch) |
Enabled |
Mendapatkan atau menetapkan nilai yang menunjukkan apakah sakelar diaktifkan atau dinonaktifkan. |
SwitchSetting |
Mendapatkan atau menyetel pengaturan saat ini untuk sakelar ini. (Diperoleh dari Switch) |
Value |
Mendapatkan atau mengatur nilai sakelar. (Diperoleh dari Switch) |
Metode
Equals(Object) |
Menentukan apakah objek yang ditentukan sama dengan objek saat ini. (Diperoleh dari Object) |
GetHashCode() |
Berfungsi sebagai fungsi hash default. (Diperoleh dari Object) |
GetSupportedAttributes() |
Mendapatkan atribut kustom yang didukung oleh sakelar. (Diperoleh dari Switch) |
GetType() |
Mendapatkan instans Type saat ini. (Diperoleh dari Object) |
MemberwiseClone() |
Membuat salinan dangkal dari yang saat ini Object. (Diperoleh dari Object) |
OnSwitchSettingChanged() |
Dipanggil saat SwitchSetting properti diubah. (Diperoleh dari Switch) |
OnValueChanged() |
Menentukan apakah nilai Value baru properti dapat diurai sebagai nilai Boolean. |
OnValueChanged() |
Dipanggil saat Value properti diubah. (Diperoleh dari Switch) |
Refresh() |
Merefresh data konfigurasi pelacakan. (Diperoleh dari Switch) |
ToString() |
Mengembalikan string yang mewakili objek saat ini. (Diperoleh dari Object) |