다음을 통해 공유


Trace.WriteLineIf 메서드

정의

조건이 true경우 추적에 대한 정보를 Listeners 컬렉션의 추적 수신기에 씁니다.

오버로드

WriteLineIf(Boolean, Object, String)

조건이 true경우 범주 이름과 개체의 ToString() 메서드 값을 Listeners 컬렉션의 추적 수신기에 씁니다.

WriteLineIf(Boolean, Object)

조건이 true경우 개체의 ToString() 메서드 값을 Listeners 컬렉션의 추적 수신기에 씁니다.

WriteLineIf(Boolean, String)

조건이 true경우 Listeners 컬렉션의 추적 수신기에 메시지를 씁니다.

WriteLineIf(Boolean, String, String)

조건이 true경우 범주 이름과 메시지를 Listeners 컬렉션의 추적 수신기에 씁니다.

WriteLineIf(Boolean, Object, String)

Source:
Trace.cs
Source:
Trace.cs
Source:
Trace.cs

조건이 true경우 범주 이름과 개체의 ToString() 메서드 값을 Listeners 컬렉션의 추적 수신기에 씁니다.

public:
 static void WriteLineIf(bool condition, System::Object ^ value, System::String ^ category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, object? value, string? category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, object value, string category);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteLineIf : bool * obj * string -> unit
Public Shared Sub WriteLineIf (condition As Boolean, value As Object, category As String)

매개 변수

condition
Boolean

메시지를 작성할 true. 그렇지 않으면 false.

value
Object

이름이 Listeners전송되는 Object.

category
String

출력을 구성하는 데 사용되는 범주 이름입니다.

특성

예제

다음 예제에서는 이름이 generalSwitchTraceSwitch 만듭니다. 이 스위치는 코드 샘플 외부에서 설정됩니다.

스위치가 TraceLevelError 이상으로 설정된 경우 예제에서는 첫 번째 오류 메시지를 Listeners출력합니다. Listeners 컬렉션에 수신기를 추가하는 방법에 대한 자세한 내용은 TraceListenerCollection 클래스를 참조하세요.

그런 다음 TraceLevelVerbose설정하면 첫 번째 메시지와 동일한 줄에 두 번째 오류 메시지가 출력됩니다. 두 번째 메시지 뒤에 줄 종결자가 잇습니다.

// Class-level declaration.
// Create a TraceSwitch.
private:
   static TraceSwitch^ generalSwitch = 
      gcnew TraceSwitch( "General", "Entire Application" );

public:
   static void MyErrorMethod( Object^ myObject, String^ category )
   {
      #if defined(TRACE)
      // Write the message if the TraceSwitch level is set
      // to Error or higher.
      Trace::WriteIf( generalSwitch->TraceError, 
         "Invalid object for category. " );
      
      // Write a second message if the TraceSwitch level is set
      // to Verbose.
      Trace::WriteLineIf( generalSwitch->TraceVerbose, 
         myObject, category );
      #endif
   }
// 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 Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "Invalid object for category. ");

    // Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, myObject, 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 Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "Invalid object for category. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, myObject, category)
End Sub

설명

기본적으로 출력은 DefaultTraceListener인스턴스에 기록됩니다.

category 매개 변수를 사용하여 출력 메시지를 그룹화할 수 있습니다.

이 메서드는 추적 수신기의 WriteLine 메서드를 호출합니다.

상속자 참고

WriteLineIf(Boolean, String) 문을 사용하는 대신 If...Then 문을 사용하여 애플리케이션 계측의 성능 저하를 최소화할 수 있습니다. 다음 두 코드 예제에서는 동일한 디버깅 메시지를 보냅니다. 그러나 mySwitch.TraceErrorfalse 평가되는 경우 WriteLine(String)호출하지 않으므로 추적이 해제된 경우 첫 번째 예제는 훨씬 빠릅니다. 두 번째 예제에서는 mySwitch.TraceErrorfalse 추적 출력이 생성되지 않는 경우에도 항상 WriteLineIf(Boolean, String)호출합니다. 이로 인해 임의로 복잡한 코드를 불필요하게 실행할 수 있습니다.

첫 번째 예제

if(mySwitch.TraceError)   
    Trace.WriteLine("aNumber = " + aNumber + " out of range");  

두 번째 예제

Trace.WriteLineIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");  

추가 정보

적용 대상

WriteLineIf(Boolean, Object)

Source:
Trace.cs
Source:
Trace.cs
Source:
Trace.cs

조건이 true경우 개체의 ToString() 메서드 값을 Listeners 컬렉션의 추적 수신기에 씁니다.

public:
 static void WriteLineIf(bool condition, System::Object ^ value);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, object? value);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, object value);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteLineIf : bool * obj -> unit
Public Shared Sub WriteLineIf (condition As Boolean, value As Object)

매개 변수

condition
Boolean

메시지를 작성할 true. 그렇지 않으면 false.

value
Object

이름이 Listeners전송되는 Object.

특성

예제

다음 예제에서는 이름이 generalSwitchTraceSwitch 만듭니다. 이 스위치는 코드 샘플 외부에서 설정됩니다.

스위치가 TraceLevelError 이상으로 설정된 경우 예제에서는 첫 번째 오류 메시지를 Listeners출력합니다. Listeners 컬렉션에 수신기를 추가하는 방법에 대한 자세한 내용은 TraceListenerCollection 클래스를 참조하세요.

그런 다음 TraceLevelVerbose설정하면 첫 번째 메시지와 동일한 줄에 개체의 이름을 출력합니다. 두 번째 메시지 뒤에 줄 종결자가 잇습니다.

// Class-level declaration.
// Create a TraceSwitch.
private:
   static TraceSwitch^ generalSwitch = 
      gcnew TraceSwitch( "General", "Entire Application" );

public:
   static void MyErrorMethod( Object^ myObject )
   {
      #if defined(TRACE)
      // Write the message if the TraceSwitch level 
      // is set to Error or higher.
      Trace::WriteIf( generalSwitch->TraceError, "Invalid object. " );
      
      // Write a second message if the TraceSwitch level is set
      // to Verbose.
      Trace::WriteLineIf( generalSwitch->TraceVerbose, myObject );
      #endif
   }
// 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.
    Trace.WriteIf(generalSwitch.TraceError, "Invalid object. ");

    // Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, myObject);
 }
' 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.
    Trace.WriteIf(generalSwitch.TraceError, "Invalid object. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, myObject)
End Sub

설명

기본적으로 출력은 DefaultTraceListener인스턴스에 기록됩니다.

이 메서드는 추적 수신기의 WriteLine 메서드를 호출합니다.

상속자 참고

WriteLineIf(Boolean, String) 문을 사용하는 대신 If...Then 문을 사용하여 애플리케이션 계측의 성능 저하를 최소화할 수 있습니다. 다음 두 코드 예제에서는 동일한 디버깅 메시지를 보냅니다. 그러나 mySwitch.TraceErrorfalse 평가되는 경우 WriteLine(String)호출하지 않으므로 추적이 해제된 경우 첫 번째 예제는 훨씬 빠릅니다. 두 번째 예제에서는 mySwitch.TraceErrorfalse 추적 출력이 생성되지 않는 경우에도 항상 WriteLineIf(Boolean, String)호출합니다. 이로 인해 임의로 복잡한 코드를 불필요하게 실행할 수 있습니다.

첫 번째 예제

if(mySwitch.TraceError)   
    Trace.WriteLine("aNumber = " + aNumber + " out of range");  

두 번째 예제

Trace.WriteLineIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");  

추가 정보

적용 대상

WriteLineIf(Boolean, String)

Source:
Trace.cs
Source:
Trace.cs
Source:
Trace.cs

조건이 true경우 Listeners 컬렉션의 추적 수신기에 메시지를 씁니다.

public:
 static void WriteLineIf(bool condition, System::String ^ message);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, string? message);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, string message);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteLineIf : bool * string -> unit
Public Shared Sub WriteLineIf (condition As Boolean, message As String)

매개 변수

condition
Boolean

메시지를 작성할 true. 그렇지 않으면 false.

message
String

쓸 메시지입니다.

특성

예제

다음 예제에서는 이름이 generalSwitchTraceSwitch 만듭니다. 이 스위치는 코드 샘플 외부에서 설정됩니다.

스위치가 TraceLevelError 이상으로 설정된 경우 예제에서는 첫 번째 오류 메시지를 Listeners출력합니다. Listeners 컬렉션에 수신기를 추가하는 방법에 대한 자세한 내용은 TraceListenerCollection 클래스를 참조하세요.

그런 다음 TraceLevelVerbose설정하면 첫 번째 메시지와 동일한 줄에 두 번째 오류 메시지가 출력됩니다. 두 번째 메시지 뒤에 줄 종결자가 잇습니다.

// Class-level declaration.
// Create a TraceSwitch.
private:
   static TraceSwitch^ generalSwitch = 
      gcnew TraceSwitch( "General", "Entire Application" );

public:
   static void MyErrorMethod()
   {
      #if defined(TRACE)
      // Write the message if the TraceSwitch level is set to
      // Error or higher.
      Trace::WriteIf( generalSwitch->TraceError, "My error message. " );
      
      // Write a second message if the TraceSwitch level is set
      // to Verbose.
      Trace::WriteLineIf( generalSwitch->TraceVerbose, 
         "My second error message." );
      #endif
   }
// Class-level declaration.
 // Create a TraceSwitch.
 static TraceSwitch generalSwitch = new TraceSwitch("General", "Entire Application");

 static public void MyErrorMethod() {
    // Write the message if the TraceSwitch level is set to Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "My error message. ");

    // Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(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.
    Trace.WriteIf(generalSwitch.TraceError, "My error message. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, "My second error message.")
End Sub

설명

기본적으로 출력은 DefaultTraceListener인스턴스에 기록됩니다.

이 메서드는 추적 수신기의 WriteLine 메서드를 호출합니다.

상속자 참고

WriteLineIf(Boolean, String) 문을 사용하는 대신 If...Then 문을 사용하여 애플리케이션 계측의 성능 저하를 최소화할 수 있습니다. 다음 두 코드 예제에서는 동일한 디버깅 메시지를 보냅니다. 그러나 mySwitch.TraceErrorfalse 평가되는 경우 WriteLine(String)호출하지 않으므로 추적이 해제된 경우 첫 번째 예제는 훨씬 빠릅니다. 두 번째 예제에서는 mySwitch.TraceErrorfalse 추적 출력이 생성되지 않는 경우에도 항상 WriteLineIf(Boolean, String)호출합니다. 이로 인해 임의로 복잡한 코드를 불필요하게 실행할 수 있습니다.

첫 번째 예제

if(mySwitch.TraceError)   
    Trace.WriteLine("aNumber = " + aNumber + " out of range");  

두 번째 예제

Trace.WriteLineIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");  

추가 정보

적용 대상

WriteLineIf(Boolean, String, String)

Source:
Trace.cs
Source:
Trace.cs
Source:
Trace.cs

조건이 true경우 범주 이름과 메시지를 Listeners 컬렉션의 추적 수신기에 씁니다.

public:
 static void WriteLineIf(bool condition, System::String ^ message, System::String ^ category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, string? message, string? category);
[System.Diagnostics.Conditional("TRACE")]
public static void WriteLineIf (bool condition, string message, string category);
[<System.Diagnostics.Conditional("TRACE")>]
static member WriteLineIf : bool * string * string -> unit
Public Shared Sub WriteLineIf (condition As Boolean, message As String, category As String)

매개 변수

condition
Boolean

메시지를 작성할 true. 그렇지 않으면 false.

message
String

쓸 메시지입니다.

category
String

출력을 구성하는 데 사용되는 범주 이름입니다.

특성

예제

다음 예제에서는 이름이 generalSwitchTraceSwitch 만듭니다. 이 스위치는 코드 샘플 외부에서 설정됩니다.

스위치가 TraceLevelError 이상으로 설정된 경우 예제에서는 첫 번째 오류 메시지를 Listeners출력합니다. Listeners 컬렉션에 수신기를 추가하는 방법에 대한 자세한 내용은 TraceListenerCollection 클래스를 참조하세요.

그런 다음 TraceLevelVerbose설정하면 두 번째 오류 메시지와 첫 번째 메시지와 같은 줄에 category 출력합니다. 두 번째 메시지 뒤에 줄 종결자가 잇습니다.

// Class-level declaration.
// Create a TraceSwitch.
private:
   static TraceSwitch^ generalSwitch = 
      gcnew TraceSwitch( "General", "Entire Application" );

public:
   static void MyErrorMethod( String^ category )
   {
      #if defined(TRACE)
      // Write the message if the TraceSwitch level is set 
      // to Error or higher.
      Trace::WriteIf( generalSwitch->TraceError, "My error message. " );
      
      // Write a second message if the TraceSwitch level is set
      // to Verbose.
      Trace::WriteLineIf( generalSwitch->TraceVerbose, 
         "My second error message.", category );
      #endif
   }
// Class-level declaration.
 // Create a TraceSwitch.
 static TraceSwitch generalSwitch = new TraceSwitch("General", "Entire Application");

 static public void MyErrorMethod(string category) {
    // Write the message if the TraceSwitch level is set to Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "My error message. ");

    // Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, "My second error message.", category);
 }
' Class-level declaration.
' Create a TraceSwitch.
Private Shared generalSwitch As New TraceSwitch("General", "Entire Application")

Public Shared Sub MyErrorMethod(category As String)
    ' Write the message if the TraceSwitch level is set to Error or higher.
    Trace.WriteIf(generalSwitch.TraceError, "My error message. ")
    
    ' Write a second message if the TraceSwitch level is set to Verbose.
    Trace.WriteLineIf(generalSwitch.TraceVerbose, _
        "My second error message.", category)
End Sub

설명

기본적으로 출력은 DefaultTraceListener인스턴스에 기록됩니다.

category 매개 변수를 사용하여 출력 메시지를 그룹화할 수 있습니다.

이 메서드는 추적 수신기의 WriteLine 메서드를 호출합니다.

상속자 참고

WriteLineIf(Boolean, String) 문을 사용하는 대신 If...Then 문을 사용하여 애플리케이션 계측의 성능 저하를 최소화할 수 있습니다. 다음 두 코드 예제에서는 동일한 디버깅 메시지를 보냅니다. 그러나 mySwitch.TraceErrorfalse 평가되는 경우 WriteLine(String)호출하지 않으므로 추적이 해제된 경우 첫 번째 예제는 훨씬 빠릅니다. 두 번째 예제에서는 mySwitch.TraceErrorfalse 추적 출력이 생성되지 않는 경우에도 항상 WriteLineIf(Boolean, String)호출합니다. 이로 인해 임의로 복잡한 코드를 불필요하게 실행할 수 있습니다.

첫 번째 예제

if(mySwitch.TraceError)   
    Trace.WriteLine("aNumber = " + aNumber + " out of range");  

두 번째 예제

Trace.WriteLineIf(mySwitch.TraceError, "aNumber = " + aNumber + " out of range");  

추가 정보

적용 대상