Trace.Assert 方法

定義

檢查條件;如果條件為 false,則輸出訊息,並顯示訊息方塊,該方塊會顯示呼叫堆疊。

多載

Assert(Boolean)

檢查條件;如果條件為 false,則顯示訊息方塊,該方塊會顯示呼叫堆疊。

Assert(Boolean, String)

檢查條件;如果條件為 false,則輸出指定的訊息,並顯示訊息方塊,該方塊會顯示呼叫堆疊。

Assert(Boolean, String, String)

檢查條件;如果條件為 false,則輸出兩個指定的訊息,並顯示訊息方塊,該方塊會顯示呼叫堆疊。

Assert(Boolean)

檢查條件;如果條件為 false,則顯示訊息方塊,該方塊會顯示呼叫堆疊。

public:
 static void Assert(bool condition);
[System.Diagnostics.Conditional("TRACE")]
public static void Assert (bool condition);
[<System.Diagnostics.Conditional("TRACE")>]
static member Assert : bool -> unit
Public Shared Sub Assert (condition As Boolean)

參數

condition
Boolean

要評估的條件運算式。 如果條件為 true,就不會傳送失敗的訊息,也不會顯示訊息方塊。

屬性

範例

下列範例會建立陣列的索引。 接著會執行一些動作來設定索引的值。 接下來,程式碼會呼叫 Assert 以確認索引值有效。 如果無效,則會 Assert 輸出呼叫堆疊。

protected:
   // Create an index for an array.
   int index;

   void Method()
   {
      // Perform some action that sets the index.
      // Test that the index value is valid.
      #if defined(TRACE)
      Trace::Assert( index > -1 );
      #endif
   }
// Create an index for an array.
int index;

void Method()
{
    // Perform some action that sets the index.

    // Test that the index value is valid.
    Trace.Assert(index > -1);
}
' Create an index for an array.
Protected index As Integer    

Protected Sub Method()
    ' Perform some action that sets the index.
    ' Test that the index value is valid. 
    Trace.Assert(index > -1)
End Sub

備註

Trace.Assert如果您想要在發行組建中執行判斷提示,請使用 方法。 方法 Debug.Assert 只適用于偵錯組建。 如需詳細資訊,請參閱受控碼中的判斷提示

一般而言, Assert(Boolean) 方法是用來在程式開發期間識別邏輯錯誤。 Assert(Boolean) 會評估條件。 如果結果是 false ,它會將失敗訊息傳送至 Listeners 集合。 您可以藉由將 加入 TraceListener 至集合,或從 Listeners 集合中移除一個 ,來自訂此行為。

當應用程式以使用者介面模式執行時,會顯示訊息方塊,其中顯示具有檔案和行號的呼叫堆疊。 訊息方塊包含三個按鈕: 中止重試忽略。 按一下 [中止 ] 按鈕會終止應用程式。 如果應用程式是在偵錯工具中執行,請按一下 [重試 ] 會將您傳送至偵錯工具中的程式碼,或提供 ,以在偵錯工具中開啟偵錯工具。 按一下 [忽略 ] 會繼續進行程式碼中的下一個指示。

注意

訊息方塊的顯示取決於 是否存在 DefaultTraceListenerDefaultTraceListener如果 不在集合中 Listeners ,則不會顯示訊息方塊。 DefaultTraceListener您可以呼叫 Clear 屬性上的 方法 ListenersSystem.Diagnostics.Trace.Listeners.Clear() () 來移除 。 對於.NET Framework應用程式,您也可以在應用程式的組態檔中使用 <clear> 元素 <remove> 元素

對於.NET Framework應用程式,您可以在對應至應用程式名稱的組態檔中變更 的行為 DefaultTraceListener 。 在此檔案中,您可以啟用和停用判斷提示訊息方塊或設定 DefaultTraceListener.LogFileName 屬性。 組態檔的格式應如下:

<configuration>  
  <system.diagnostics>  
    <switches>  
      <add name="mySwitch" value="4"/>  
    </switches>  
    <trace autoflush="false" indentsize="4"/>  
    <assert assertuienabled="true" logfilename=".\TraceLog.txt"/>  
  </system.diagnostics>  
</configuration>  

另請參閱

適用於

Assert(Boolean, String)

檢查條件;如果條件為 false,則輸出指定的訊息,並顯示訊息方塊,該方塊會顯示呼叫堆疊。

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

參數

condition
Boolean

要評估的條件運算式。 如果條件為 true,就不會傳送指定的訊息,也不會顯示訊息方塊。

message
String

要傳送給 Listeners 集合的訊息。

屬性

範例

下列範例會 type 檢查 參數是否有效。 如果傳入的 typenull ,則會 Assert 輸出訊息。

public:
   static void MyMethod( Type^ type, Type^ baseType )
   {
     #if defined(TRACE)
     Trace::Assert( type != nullptr, "Type parameter is null" );
     #endif
      
      // Perform some processing.
   }
public static void MyMethod(Type type, Type baseType)
{
    Trace.Assert(type != null, "Type parameter is null");

    // Perform some processing.
}
Public Shared Sub MyMethod(type As Type, baseType As Type)
    Trace.Assert( Not (type Is Nothing), "Type parameter is null")

    ' Perform some processing.
End Sub

備註

Trace.Assert如果您想要在發行組建中執行判斷提示,請使用 方法。 方法 Debug.Assert 只適用于偵錯組建。 如需詳細資訊,請參閱受控碼中的判斷提示

一般而言, Assert(Boolean, String) 方法是用來在程式開發期間識別邏輯錯誤。 Assert(Boolean, String) 會評估條件。 如果結果為 false ,它會將指定的診斷訊息傳送至 Listeners 集合。 您可以藉由將 加入 TraceListener 至集合,或從 Listeners 集合中移除一個 ,來自訂此行為。

當應用程式以使用者介面模式執行時,會顯示訊息方塊,其中顯示具有檔案和行號的呼叫堆疊。 訊息方塊包含三個按鈕: 中止重試忽略。 按一下 [中止 ] 按鈕會終止應用程式。 如果應用程式是在偵錯工具中執行,請按一下 [重試 ] 會將您傳送至偵錯工具中的程式碼,或提供 ,以在偵錯工具中開啟偵錯工具。 按一下 [忽略 ] 會繼續進行程式碼中的下一個指示。

注意

訊息方塊的顯示取決於 是否存在 DefaultTraceListenerDefaultTraceListener如果 不在集合中 Listeners ,則不會顯示訊息方塊。 DefaultTraceListener您可以呼叫 Clear 屬性上的 方法 ListenersSystem.Diagnostics.Trace.Listeners.Clear() () 來移除 。 對於.NET Framework應用程式,您也可以在應用程式的組態檔中使用 <clear> 元素 <remove> 元素

對於.NET Framework應用程式,您可以在對應至應用程式名稱的組態檔中變更 的行為 DefaultTraceListener 。 在此檔案中,您可以啟用和停用判斷提示訊息方塊或設定 DefaultTraceListener.LogFileName 屬性。 組態檔的格式應如下:

<configuration>  
  <system.diagnostics>  
    <switches>  
      <add name="mySwitch" value="4"/>  
    </switches>  
    <trace autoflush="false" indentsize="4"/>  
    <assert assertuienabled="true" logfilename=".\TraceLog.txt"/>  
  </system.diagnostics>  
</configuration>  

另請參閱

適用於

Assert(Boolean, String, String)

檢查條件;如果條件為 false,則輸出兩個指定的訊息,並顯示訊息方塊,該方塊會顯示呼叫堆疊。

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

參數

condition
Boolean

要評估的條件運算式。 如果條件為 true,就不會傳送指定的訊息,也不會顯示訊息方塊。

message
String

要傳送給 Listeners 集合的訊息。

detailMessage
String

要傳送給 Listeners 集合的詳細訊息。

屬性

範例

下列範例會檢查 參數是否 type 有效。 如果傳入的 typenull ,則會 Assert 輸出訊息。

public:
   static void MyMethod( Type^ type, Type^ baseType )
   {
      #if defined(TRACE)
      Trace::Assert( type != nullptr, "Type parameter is null", "Can't get object for null type" );
      #endif
      
      // Perform some processing.
   }
public static void MyMethod(Type type, Type baseType)
{
    Trace.Assert(type != null, "Type parameter is null",
       "Can't get object for null type");

    // Perform some processing.
}
Public Shared Sub MyMethod(type As Type, baseType As Type)
    Trace.Assert( Not (type Is Nothing), "Type parameter is null", _
        "Can't get object for null type")

    ' Perform some processing.
End Sub

備註

Trace.Assert如果您想要在發行組建中執行判斷提示,請使用 方法。 方法 Debug.Assert 只適用于偵錯組建。 如需詳細資訊,請參閱受控碼中的判斷提示

一般而言, Assert(Boolean, String, String) 方法是用來在程式開發期間識別邏輯錯誤。 Assert 會評估條件。 如果結果為 false ,它會將指定的診斷訊息和詳細訊息傳送至 Listeners 集合。 您可以藉由將 加入 TraceListener 至集合,或從 Listeners 集合中移除一個 ,來自訂此行為。

當應用程式以使用者介面模式執行時,會顯示訊息方塊,其中顯示具有檔案和行號的呼叫堆疊。 訊息方塊包含三個按鈕: 中止重試忽略。 按一下 [中止] 按鈕會終止應用程式。 如果應用程式是在偵錯工具中執行,請按一下 [重試 ] 會將您傳送至偵錯工具中的程式碼,或者如果不是,則提供開啟偵錯工具。 按一下 [忽略] 會繼續執行程式碼中的下一個指示。

注意

訊息方塊的顯示取決於 是否存在 DefaultTraceListenerDefaultTraceListener如果 不在集合中 Listeners ,則不會顯示訊息方塊。 DefaultTraceListener您可以藉由呼叫 Clear 屬性上的 Listeners 方法, () System.Diagnostics.Trace.Listeners.Clear() 來移除 。 對於.NET Framework應用程式,您也可以在應用程式的組態檔中使用 <clear> 元素 <remove> 元素

對於.NET Framework應用程式,您可以在對應至應用程式名稱的組態檔中變更 的行為 DefaultTraceListener 。 在此檔案中,您可以啟用和停用判斷提示訊息方塊或設定 DefaultTraceListener.LogFileName 屬性。 組態檔的格式應如下:

<configuration>  
  <system.diagnostics>  
    <switches>  
      <add name="mySwitch" value="4"/>  
    </switches>  
    <trace autoflush="false" indentsize="4"/>  
    <assert assertuienabled="true" logfilename=".\TraceLog.txt"/>  
  </system.diagnostics>  
</configuration>  

另請參閱

適用於