Debug.WriteIf Metódus
Definíció
Fontos
Egyes információk olyan, kiadás előtti termékekre vonatkoznak, amelyek a kiadásig még jelentősen módosulhatnak. A Microsoft nem vállal kifejezett vagy törvényi garanciát az itt megjelenő információért.
Adatokat ír a hibakeresésről a gyűjtemény nyomkövetési Listeners figyelőinek, ha egy feltétel fennáll true.
Túlterhelések
| Name | Description |
|---|---|
| WriteIf(Boolean, Debug+WriteIfInterpolatedStringHandler) |
Ha |
| WriteIf(Boolean, Object) |
Az objektum ToString() metódusának értékét írja a gyűjtemény nyomkövetési Listeners figyelőinek, ha egy feltétel . |
| WriteIf(Boolean, String) |
Ha feltétel van, üzenetet ír a gyűjtemény nyomkövetési Listeners figyelőinek |
| WriteIf(Boolean, Debug+WriteIfInterpolatedStringHandler, String) |
Kategórianevet és üzenetet ír a gyűjtemény nyomkövetési figyelőinek Listeners , ha egy adott feltétel teljesül |
| WriteIf(Boolean, Object, String) |
Kategórianevet és az objektum ToString() metódusának értékét írja a gyűjtemény nyomkövetési Listeners figyelőinek, ha egy feltétel . |
| WriteIf(Boolean, String, String) |
Kategórianevet és üzenetet ír a gyűjtemény nyomkövetési figyelőinek Listeners , ha egy feltétel teljesül |
WriteIf(Boolean, Debug+WriteIfInterpolatedStringHandler)
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
Ha condition igen true, kategórianevet és üzenetet ír a gyűjtemény nyomkövetési figyelőinek Listeners .
public:
static void WriteIf(bool condition, System::Diagnostics::Debug::WriteIfInterpolatedStringHandler % message);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf(bool condition, ref System.Diagnostics.Debug.WriteIfInterpolatedStringHandler message);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * WriteIfInterpolatedStringHandler -> unit
Public Shared Sub WriteIf (condition As Boolean, ByRef message As Debug.WriteIfInterpolatedStringHandler)
Paraméterek
- condition
- Boolean
A kiértékelendő feltételes kifejezés. Ha a feltétel az true, az érték a gyűjtemény nyomkövetési figyelőinek lesz megírva.
Az írandó üzenet, ha condition az .true
- Attribútumok
Megjegyzések
Ezt a túlterhelést a 6. .NET vezették be a teljesítmény javítása érdekében. A paramétert használó String túlterhelésekhez képest ez a túlterhelés csak akkor értékeli ki az interpolált sztringformázási elemeket, ha az üzenetre szükség van.
Alapértelmezés szerint a kimenet a következő példányra DefaultTraceListenerlesz megírva: .
A paraméter használatával category csoportosíthatja a kimeneti üzeneteket.
Ez a metódus meghívja a Write nyomkövetési figyelő metódusát.
Lásd még
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute
A következőre érvényes:
WriteIf(Boolean, Object)
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
Az objektum ToString() metódusának értékét írja a gyűjtemény nyomkövetési Listeners figyelőinek, ha egy feltétel .true
public:
static void WriteIf(bool condition, System::Object ^ value);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf(bool condition, object value);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf(bool condition, object? value);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * obj -> unit
Public Shared Sub WriteIf (condition As Boolean, value As Object)
Paraméterek
- condition
- Boolean
A kiértékelendő feltételes kifejezés. Ha a feltétel az true, az érték a gyűjtemény nyomkövetési figyelőinek lesz megírva.
- Attribútumok
Példák
Az alábbi példa létrehoz egy TraceSwitch elnevezettet generalSwitch. Ez a kapcsoló a kódmintán kívül van beállítva.
Ha a kapcsoló a TraceLevelError magasabbra van állítva, a példa az értékparaméter utónevét adja meg a Listeners. A figyelő gyűjteményhez való Listeners hozzáadásáról további információt az TraceListenerCollection osztályban talál.
Ezután, ha a TraceLevel beállítás Verboseértéke, a példa egy üzenetet ad ki ugyanazon a sorban, mint az első üzenet. A sor terminátora a második üzenetet követi.
// Class-level declaration.
// Create a TraceSwitch.
static TraceSwitch generalSwitch = new TraceSwitch("General", "Entire Application");
static public void MyErrorMethod(Object myObject)
{
// Write the message if the TraceSwitch level is set to Error or higher.
Debug.WriteIf(generalSwitch.TraceError, myObject);
// Write a second message if the TraceSwitch level is set to Verbose.
Debug.WriteLineIf(generalSwitch.TraceVerbose, " is not a valid value for this method.");
}
' Class-level declaration.
' Create a TraceSwitch.
Private Shared generalSwitch As New TraceSwitch("General", "Entire Application")
Public Shared Sub MyErrorMethod(myObject As Object)
' Write the message if the TraceSwitch level is set to Error or higher.
Debug.WriteIf(generalSwitch.TraceError, myObject)
' Write a second message if the TraceSwitch level is set to Verbose.
Debug.WriteLineIf(generalSwitch.TraceVerbose, " is not a valid value for this method.")
End Sub
Megjegyzések
Alapértelmezés szerint a kimenet a következő példányra DefaultTraceListenerlesz megírva: .
Ez a metódus meghívja a Write nyomkövetési figyelő metódusát.
Megjegyzések az öröklőkhöz
Az alkalmazás rendszerezésének teljesítménybeli büntetését az utasítások használata helyett utasítások használatával If...ThenWriteIf(Boolean, String) minimalizálhatja. Az alábbi két példakód ugyanazt a hibakeresési üzenetet küldi el. Az első példa azonban sokkal gyorsabb, ha a nyomkövetés ki van kapcsolva, mert ha mySwitch.TraceError kiértékeli false, akkor nem hívhatja meg Write(String). A második példa mindig meghívja a hívásokat WriteIf(Boolean, String), még akkor is, ha mySwitch.TraceError van false , és nem jön létre nyomkövetési kimenet. Ez tetszőlegesen összetett kód szükségtelen végrehajtását eredményezheti.
Első példa:
if(mySwitch.TraceError)
Debug.Write("aNumber = " + aNumber + " out of range");
Második példa:
Debug.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Lásd még
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute
A következőre érvényes:
WriteIf(Boolean, String)
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
Ha feltétel van, üzenetet ír a gyűjtemény nyomkövetési Listeners figyelőinek true.
public:
static void WriteIf(bool condition, System::String ^ message);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf(bool condition, string message);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf(bool condition, string? message);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * string -> unit
Public Shared Sub WriteIf (condition As Boolean, message As String)
Paraméterek
- condition
- Boolean
A kiértékelendő feltételes kifejezés. Ha a feltétel az true, az üzenet a gyűjtemény nyomkövetési figyelőinek lesz megírva.
- message
- String
Egy írandó üzenet.
- Attribútumok
Példák
Az alábbi példa létrehoz egy TraceSwitch elnevezettet generalSwitch. Ez a kapcsoló a kódmintán kívül van beállítva.
Ha a kapcsoló a magasabbra van állítva TraceLevelError , a példa az első hibaüzenetet adja ki a Listeners. A figyelő gyűjteményhez való hozzáadásáról további információt az ListenersTraceListenerCollection osztályban talál.
Ezután, ha a TraceLevel be van állítva Verbose, a példa a második hibaüzenetet az első üzenettel megegyező sorban adja ki. A sor terminátora a második üzenetet követi.
// Class-level declaration.
// Create a TraceSwitch.
TraceSwitch generalSwitch = new TraceSwitch("General", "Entire Application");
static void MyErrorMethod()
{
// Write the message if the TraceSwitch level is set to Error or higher.
Debug.WriteIf(generalSwitch.TraceError, "My error message. ");
// Write a second message if the TraceSwitch level is set to Verbose.
Debug.WriteIf(generalSwitch.TraceVerbose, "My second error message.");
}
' Class-level declaration.
' Create a TraceSwitch.
Private Shared generalSwitch As New TraceSwitch("General", "Entire Application")
Public Shared Sub MyErrorMethod()
' Write the message if the TraceSwitch level is set to Error or higher.
Debug.WriteIf(generalSwitch.TraceError, "My error message. ")
' Write a second message if the TraceSwitch level is set to Verbose.
Debug.WriteIf(generalSwitch.TraceVerbose, "My second error message.")
End Sub
Megjegyzések
Alapértelmezés szerint a kimenet a következő példányra DefaultTraceListenerlesz megírva: .
Ez a metódus meghívja a Write nyomkövetési figyelő metódusát.
Megjegyzések az öröklőkhöz
Az alkalmazás rendszerezésének teljesítménybeli büntetését az utasítások használata helyett utasítások használatával If...ThenWriteIf(Boolean, String) minimalizálhatja. Az alábbi két példakód ugyanazt a hibakeresési üzenetet küldi el. Az első példa azonban sokkal gyorsabb, ha a nyomkövetés ki van kapcsolva, mert ha mySwitch.TraceError kiértékeli false, akkor nem hívhatja meg Write(String). A második példa mindig meghívja a hívásokat WriteIf(Boolean, String), még akkor is, ha mySwitch.TraceError van false , és nem jön létre nyomkövetési kimenet. Ez tetszőlegesen összetett kód szükségtelen végrehajtását eredményezheti.
Első példa:
if(mySwitch.TraceError)
Debug.Write("aNumber = " + aNumber + " out of range");
Második példa:
Debug.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Lásd még
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute
A következőre érvényes:
WriteIf(Boolean, Debug+WriteIfInterpolatedStringHandler, String)
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
Kategórianevet és üzenetet ír a gyűjtemény nyomkövetési figyelőinek Listeners , ha egy adott feltétel teljesül true.
public:
static void WriteIf(bool condition, System::Diagnostics::Debug::WriteIfInterpolatedStringHandler % message, System::String ^ category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf(bool condition, ref System.Diagnostics.Debug.WriteIfInterpolatedStringHandler message, string? category);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * WriteIfInterpolatedStringHandler * string -> unit
Public Shared Sub WriteIf (condition As Boolean, ByRef message As Debug.WriteIfInterpolatedStringHandler, category As String)
Paraméterek
- condition
- Boolean
A kiértékelendő feltételes kifejezés. Ha a feltétel az true, az üzenet a gyűjtemény nyomkövetési figyelőinek lesz megírva.
Az írandó üzenet.
- category
- String
A kimenet rendszerezéséhez használt kategórianév.
- Attribútumok
Megjegyzések
Ezt a túlterhelést a 6. .NET vezették be a teljesítmény javítása érdekében. A paramétert használó String túlterhelésekhez képest ez a túlterhelés csak akkor értékeli ki az interpolált sztringformázási elemeket, ha az üzenetre szükség van.
Alapértelmezés szerint a kimenet a következő példányra DefaultTraceListenerlesz megírva: .
A paraméter használatával category csoportosíthatja a kimeneti üzeneteket.
Ez a metódus meghívja a Write nyomkövetési figyelő metódusát.
Lásd még
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute
A következőre érvényes:
WriteIf(Boolean, Object, String)
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
Kategórianevet és az objektum ToString() metódusának értékét írja a gyűjtemény nyomkövetési Listeners figyelőinek, ha egy feltétel .true
public:
static void WriteIf(bool condition, System::Object ^ value, System::String ^ category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf(bool condition, object value, string category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf(bool condition, object? value, string? category);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * obj * string -> unit
Public Shared Sub WriteIf (condition As Boolean, value As Object, category As String)
Paraméterek
- condition
- Boolean
A kiértékelendő feltételes kifejezés. Ha a feltétel az true, a kategória neve és értéke a gyűjtemény nyomkövetési figyelőinek lesz megírva.
- category
- String
A kimenet rendszerezéséhez használt kategórianév.
- Attribútumok
Példák
Az alábbi példa létrehoz egy TraceSwitch elnevezettet generalSwitch. Ez a kapcsoló a kódmintán kívül van beállítva.
Ha a kapcsoló a TraceLevelVerbosekövetkezőre van állítva, a példa a név és myObject a category következő lesz Listeners. A figyelő gyűjteményhez való Listeners hozzáadásáról további információt az TraceListenerCollection osztályban talál.
Ezután, ha a TraceLevel beállítás Error értéke vagy magasabb, a példa a második hibaüzenetet az első üzenettel megegyező sorban adja ki. A sor terminátora a második üzenetet követi.
// Class-level declaration.
// Create a TraceSwitch.
static TraceSwitch generalSwitch = new TraceSwitch("General", "Entire Application");
static public void MyErrorMethod(Object myObject, string category)
{
// Write the message if the TraceSwitch level is set to Verbose.
Debug.WriteIf(generalSwitch.TraceVerbose, myObject, category);
// Write a second message if the TraceSwitch level is set to Error or higher.
Debug.WriteLineIf(generalSwitch.TraceError, " Object is not valid for this category.");
}
' Class-level declaration.
' Create a TraceSwitch.
Private Shared generalSwitch As New TraceSwitch("General", "Entire Application")
Public Shared Sub MyErrorMethod(myObject As Object, category As String)
' Write the message if the TraceSwitch level is set to Verbose.
Debug.WriteIf(generalSwitch.TraceVerbose, myObject, category)
' Write a second message if the TraceSwitch level is set to Error or higher.
Debug.WriteLineIf(generalSwitch.TraceError, " Object is not valid for this category.")
End Sub
Megjegyzések
Alapértelmezés szerint a kimenet a következő példányra DefaultTraceListenerlesz megírva: .
A category paraméter használható a kimeneti üzenetek csoportosítására.
Ez a metódus meghívja a Write nyomkövetési figyelő metódusát.
Megjegyzések az öröklőkhöz
Az alkalmazás rendszerezésének teljesítménybeli büntetését az utasítások használata helyett utasítások használatával If...ThenWriteIf(Boolean, String) minimalizálhatja. Az alábbi két példakód ugyanazt a hibakeresési üzenetet küldi el. Az első példa azonban sokkal gyorsabb, ha a nyomkövetés ki van kapcsolva, mert ha mySwitch.TraceError kiértékeli false, akkor nem hívhatja meg Write(String). A második példa mindig meghívja a hívásokat WriteIf(Boolean, String), még akkor is, ha mySwitch.TraceError van false , és nem jön létre nyomkövetési kimenet. Ez tetszőlegesen összetett kód szükségtelen végrehajtását eredményezheti.
Első példa:
if(mySwitch.TraceError)
Debug.Write("aNumber = " + aNumber + " out of range");
Második példa:
Debug.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Lásd még
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute
A következőre érvényes:
WriteIf(Boolean, String, String)
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
- Forrás:
- Debug.cs
Kategórianevet és üzenetet ír a gyűjtemény nyomkövetési figyelőinek Listeners , ha egy feltétel teljesül true.
public:
static void WriteIf(bool condition, System::String ^ message, System::String ^ category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf(bool condition, string message, string category);
[System.Diagnostics.Conditional("DEBUG")]
public static void WriteIf(bool condition, string? message, string? category);
[<System.Diagnostics.Conditional("DEBUG")>]
static member WriteIf : bool * string * string -> unit
Public Shared Sub WriteIf (condition As Boolean, message As String, category As String)
Paraméterek
- condition
- Boolean
A kiértékelendő feltételes kifejezés. Ha a feltétel az true, a kategória neve és üzenete a gyűjtemény nyomkövetési figyelőinek lesz megírva.
- message
- String
Egy írandó üzenet.
- category
- String
A kimenet rendszerezéséhez használt kategórianév.
- Attribútumok
Példák
Az alábbi példa létrehoz egy TraceSwitch elnevezettet generalSwitch. Ez a kapcsoló a kódmintán kívül van beállítva.
Ha a kapcsoló a TraceLevelVerbosekövetkezőre van állítva, a példa az első hibaüzenetet adja ki a Listenerskövetkezőnek: . A figyelő gyűjteményhez való Listeners hozzáadásáról további információt az TraceListenerCollection osztályban talál.
Ezután, ha a TraceLevel beállítás Error értéke vagy magasabb, a példa a második hibaüzenetet az első üzenettel megegyező sorban adja ki. A sor terminátora a második üzenetet követi.
// Class-level declaration.
// Create a TraceSwitch.
static TraceSwitch generalSwitch = new TraceSwitch("General", "Entire Application");
static public void MyErrorMethod(Object myObject, string category)
{
// Write the message if the TraceSwitch level is set to Verbose.
Debug.WriteIf(generalSwitch.TraceVerbose, myObject.ToString() +
" is not a valid object for category: ", category);
// Write a second message if the TraceSwitch level is set to Error or higher.
Debug.WriteLineIf(generalSwitch.TraceError, " Please use a different category.");
}
' Class-level declaration.
' Create a TraceSwitch.
Private Shared generalSwitch As New TraceSwitch("General", "Entire Application")
Public Shared Sub MyErrorMethod(myObject As Object, category As String)
' Write the message if the TraceSwitch level is set to Verbose.
Debug.WriteIf(generalSwitch.TraceVerbose, myObject.ToString() & _
" is not a valid object for category: ", category)
' Write a second message if the TraceSwitch level is set to Error or higher.
Debug.WriteLineIf(generalSwitch.TraceError, " Please use a different category.")
End Sub
Megjegyzések
Alapértelmezés szerint a kimenet a következő példányra DefaultTraceListenerlesz megírva: .
A category paraméter használható a kimeneti üzenetek csoportosítására.
Ez a metódus meghívja a TraceListener.Write nyomkövetési figyelő metódusát.
Megjegyzések az öröklőkhöz
Az alkalmazás rendszerezésének teljesítménybeli büntetését az utasítások használata helyett utasítások használatával If...ThenWriteIf(Boolean, String) minimalizálhatja. Az alábbi két példakód ugyanazt a hibakeresési üzenetet küldi el. Az első példa azonban sokkal gyorsabb, ha a nyomkövetés ki van kapcsolva, mert ha mySwitch.TraceError kiértékeli false, akkor nem hívhatja meg Write(String). A második példa mindig meghívja a hívásokat WriteIf(Boolean, String), még akkor is, ha mySwitch.TraceError van false , és nem jön létre nyomkövetési kimenet. Ez tetszőlegesen összetett kód szükségtelen végrehajtását eredményezheti.
Első példa:
if(mySwitch.TraceError)
Debug.Write("aNumber = " + aNumber + " out of range");
Második példa:
Debug.WriteIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");
Lásd még
- Debug
- Trace
- BooleanSwitch
- TraceSwitch
- TraceListener
- DefaultTraceListener
- ConsoleTraceListener
- ConditionalAttribute