Debug.Assert Метод

Определение

Проверяет условие. Если условие имеет значение false, выдается сообщение и отображается окно сообщения со стеком вызовов.Checks for a condition; if the condition is false, outputs messages and displays a message box that shows the call stack.

Перегрузки

Assert(Boolean)

Проверяет условие. Если условие имеет значение false, отображается окно сообщения со стеком вызовов.Checks for a condition; if the condition is false, displays a message box that shows the call stack.

Assert(Boolean, String)

Проверяет условие. Если условие имеет значение false, выдается указанное сообщение и отображается окно сообщения со стеком вызовов.Checks for a condition; if the condition is false, outputs a specified message and displays a message box that shows the call stack.

Assert(Boolean, String, String)

Проверяет условие. Если условие имеет значение false, выдается два указанных сообщения и отображается окно сообщения со стеком вызовов.Checks for a condition; if the condition is false, outputs two specified messages and displays a message box that shows the call stack.

Assert(Boolean, String, String, Object[])

Проверяет условие; если условие имеет значение false, выводит два сообщения (простое и отформатированное) и отображает окно сообщения со стеком вызовов.Checks for a condition; if the condition is false, outputs two messages (simple and formatted) and displays a message box that shows the call stack.

Assert(Boolean)

Проверяет условие. Если условие имеет значение false, отображается окно сообщения со стеком вызовов.Checks for a condition; if the condition is false, displays a message box that shows the call stack.

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

Параметры

condition
Boolean

Условное выражение для вычисления.The conditional expression to evaluate. Если условие имеет значение true, сообщение о сбое не отправляется и не отображается окно сообщения.If the condition is true, a failure message is not sent and the message box is not displayed.

Атрибуты

Примеры

В следующем примере создается индекс для массива, выполняется некоторое действие для задания значения индекса, а затем вызывается Assert для подтверждения допустимости значения индекса.The following example creates an index for an array, performs some action to set the value of the index, and then calls Assert to confirm that the index value is valid. Если он недействителен, Assert выводит стек вызовов.If it is not valid, Assert outputs the call stack.

// Create a local value.
int index;

// Perform some action that sets the local value.
index = -40;

// Test that the local value is valid. 
#if defined(DEBUG)
Debug::Assert( index > -1 );
#endif
// Create an index for an array.
 int index;

 // Perform some action that sets the index.
 index = -40;

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

' Perform some action that sets the index.
index = -40

' Test that the index value is valid. 
Debug.Assert((index > - 1))

Комментарии

По умолчанию Debug.Assert метод работает только в отладочных сборках.By default, the Debug.Assert method works only in debug builds. Используйте Trace.Assert метод, если вы хотите выполнять утверждения в сборках выпуска.Use the Trace.Assert method if you want to do assertions in release builds. Дополнительные сведения см. в разделе Утверждения в управляемом коде.For more information, see Assertions in Managed Code.

Важно!

Эти Assert методы недоступны для приложений Магазина Windows.The Assert methods are not available for Windows Store apps.

Как правило, Assert(Boolean) метод используется для обнаружения логических ошибок во время разработки программы.Typically, the Assert(Boolean) method is used to identify logic errors during program development. Assert вычисляет условие.Assert evaluates the condition. Если результат равен false , он отправляет в коллекцию сообщение об ошибке Listeners .If the result is false, it sends a failure message to the Listeners collection. Это поведение можно настроить, добавив TraceListener в коллекцию или удалив одну из них Listeners .You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

При выполнении приложения в режиме пользовательского интерфейса отображается окно сообщения, в котором показан стек вызовов с номерами файла и строки.When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. Окно сообщения содержит три кнопки: прервать, повторить и пропустить.The message box contains three buttons: Abort, Retry, and Ignore. Нажатие кнопки прервать завершает работу приложения.Clicking the Abort button terminates the application. При нажатии кнопки повторить вы передаете вам код в отладчике, если приложение выполняется в отладчике, или предлагает открыть отладчик, если это не так.Clicking Retry sends you to the code in the debugger if your application is running in a debugger, or offers to open a debugger if it is not. Нажатие кнопки пропустить продолжится с помощью следующей инструкции в коде.Clicking Ignore continues with the next instruction in the code.

Примечание

Приложения Магазина Windows 8. x не поддерживают модальные диалоговые окна, поэтому они ведут себя одинаково в режиме пользовательского интерфейса и в режиме без пользовательского интерфейса.Windows 8.x Store apps do not support modal dialog boxes, so they behave the same in user interface mode and non-user interface mode. Сообщение записывается в активные прослушиватели трассировки в режиме отладки, иначе в режиме выпуска сообщение не записывается.The message is written to the active trace listeners in debugging mode, or no message is written in release mode.

Примечание

Отображение окна сообщения зависит от наличия DefaultTraceListener .The display of the message box depends on the presence of the DefaultTraceListener. Если объект DefaultTraceListener отсутствует в Listeners коллекции, окно сообщения не отображается.If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. DefaultTraceListenerМожно удалить с помощью < > clear, < Remove > или путем вызова Clear метода Listeners Свойства ( System.Diagnostics.Trace.Listeners.Clear() ).The DefaultTraceListener can be removed by the <clear>, the <remove>, or by calling the Clear method on the Listeners property (System.Diagnostics.Trace.Listeners.Clear()).

Поведение можно изменить DefaultTraceListener в файле конфигурации, соответствующем имени приложения.You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. В этом файле можно включить и отключить окно сообщения утверждения или задать DefaultTraceListener.LogFileName свойство.In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. Файл конфигурации следует отформатировать следующим образом:The configuration file should be formatted as follows:

<configuration>  
  <system.diagnostics>  
    <assert assertuienabled="true" logfilename="c:\\myFile.log" />  
  </system.diagnostics>  
</configuration>  

См. также раздел

Применяется к

Assert(Boolean, String)

Проверяет условие. Если условие имеет значение false, выдается указанное сообщение и отображается окно сообщения со стеком вызовов.Checks for a condition; if the condition is false, outputs a specified message and displays a message box that shows the call stack.

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

Параметры

condition
Boolean

Условное выражение для вычисления.The conditional expression to evaluate. Если условие имеет значение true, указанное сообщение не отправляется и окно сообщения не отображается.If the condition is true, the specified message is not sent and the message box is not displayed.

message
String

Сообщение для отправки в коллекцию Listeners.The message to send to the Listeners collection.

Атрибуты

Примеры

В следующем примере проверяется, type является ли параметр допустимым.The following example checks whether the type parameter is valid. Если type имеет значение null , Assert выводится сообщение.If type is null, Assert outputs a message.

void MyMethod( Object^ obj, Type^ type )
{
   #if defined(DEBUG)
   Debug::Assert( type != nullptr, "Type paramater is null" );
   #endif
}
public static void MyMethod(Type type, Type baseType) {
    Debug.Assert(type != null, "Type parameter is null");

   // Perform some processing.
 }

Public Shared Sub MyMethod(type As Type, baseType As Type)
    Debug.Assert(Not (type Is Nothing), "Type parameter is null")
End Sub

Комментарии

По умолчанию Debug.Assert метод работает только в отладочных сборках.By default, the Debug.Assert method works only in debug builds. Используйте Trace.Assert метод, если вы хотите выполнять утверждения в сборках выпуска.Use the Trace.Assert method if you want to do assertions in release builds. Дополнительные сведения см. в разделе Утверждения в управляемом коде.For more information, see Assertions in Managed Code.

Как правило, Assert метод используется для обнаружения логических ошибок во время разработки программы.Typically, the Assert method is used to identify logic errors during program development. Assert вычисляет условие.Assert evaluates the condition. Если результат равен false , он отправляет в коллекцию указанное диагностическое сообщение Listeners .If the result is false, it sends the specified diagnostic message to the Listeners collection. Это поведение можно настроить, добавив TraceListener в коллекцию или удалив одну из них Listeners .You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

При выполнении приложения в режиме пользовательского интерфейса отображается окно сообщения, в котором показан стек вызовов с номерами файла и строки.When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. Окно сообщения содержит три кнопки: прервать, повторить и пропустить.The message box contains three buttons: Abort, Retry, and Ignore. Нажатие кнопки прервать завершает работу приложения.Clicking the Abort button terminates the application. При нажатии кнопки повторить вы передаете вам код в отладчике, если приложение выполняется в отладчике, или предлагает открыть отладчик, если это не так.Clicking Retry sends you to the code in the debugger if your application is running in a debugger, or offers to open a debugger if it is not. Нажатие кнопки пропустить продолжится с помощью следующей инструкции в коде.Clicking Ignore continues with the next instruction in the code.

Примечание

Отображение окна сообщения зависит от наличия DefaultTraceListener .The display of the message box depends on the presence of the DefaultTraceListener. Если объект DefaultTraceListener отсутствует в Listeners коллекции, окно сообщения не отображается.If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. DefaultTraceListenerМожно удалить с помощью < > clear, < Remove > или путем вызова Clear метода Listeners Свойства ( System.Diagnostics.Trace.Listeners.Clear() ).The DefaultTraceListener can be removed by the <clear>, the <remove>, or by calling the Clear method on the Listeners property (System.Diagnostics.Trace.Listeners.Clear()).

Поведение можно изменить DefaultTraceListener в файле конфигурации, соответствующем имени приложения.You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. В этом файле можно включить и отключить окно сообщения утверждения или задать DefaultTraceListener.LogFileName свойство.In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. Файл конфигурации следует отформатировать следующим образом:The configuration file should be formatted as follows:

<configuration>  
  <system.diagnostics>  
    <assert assertuienabled="true" logfilename="c:\\myFile.log" />  
  </system.diagnostics>  
</configuration>  

См. также раздел

Применяется к

Assert(Boolean, String, String)

Проверяет условие. Если условие имеет значение false, выдается два указанных сообщения и отображается окно сообщения со стеком вызовов.Checks for a condition; if the condition is false, outputs two specified messages and displays a message box that shows the call stack.

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

Параметры

condition
Boolean

Условное выражение для вычисления.The conditional expression to evaluate. Если условие имеет значение true, указанные сообщения не отправляются и окно сообщения не отображается.If the condition is true, the specified messages are not sent and the message box is not displayed.

message
String

Сообщение для отправки в коллекцию Listeners.The message to send to the Listeners collection.

detailMessage
String

Подробное сообщение для отправки в коллекцию Listeners.The detailed message to send to the Listeners collection.

Атрибуты

Примеры

В следующем примере проверяется, type является ли параметр допустимым.The following example checks whether the type parameter is valid. Если type имеет значение null , Assert выводит два сообщения.If type is null, Assert outputs two messages.

void MyMethod( Object^ obj, Type^ type )
{
   #if defined(DEBUG)
   Debug::Assert( type != nullptr, "Type paramater is null", "Can't get object for null type" );
   #endif
}
public static void MyMethod(Type type, Type baseType) {
    Debug.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)
    Debug.Assert( Not (type Is Nothing), "Type parameter is null", "Can't get object for null type")
    ' Perform some processing.
End Sub

Комментарии

По умолчанию Debug.Assert метод работает только в отладочных сборках.By default, the Debug.Assert method works only in debug builds. Используйте Trace.Assert метод, если вы хотите выполнять утверждения в сборках выпуска.Use the Trace.Assert method if you want to do assertions in release builds. Дополнительные сведения см. в разделе Утверждения в управляемом коде.For more information, see Assertions in Managed Code.

Как правило, Assert(Boolean, String, String) метод используется для обнаружения логических ошибок во время разработки программы.Typically, the Assert(Boolean, String, String) method is used to identify logic errors during program development. Assert вычисляет условие.Assert evaluates the condition. Если результат равен false , он отправляет в коллекцию указанное диагностическое сообщение и подробное сообщение Listeners .If the result is false, it sends the specified diagnostic message and detailed message to the Listeners collection. Это поведение можно настроить, добавив TraceListener в коллекцию или удалив одну из них Listeners .You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

При выполнении приложения в режиме пользовательского интерфейса отображается окно сообщения, в котором показан стек вызовов с номерами файла и строки.When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. Окно сообщения содержит три кнопки: прервать, повторить и пропустить.The message box contains three buttons: Abort, Retry, and Ignore. Нажатие кнопки прервать завершает работу приложения.Clicking the Abort button terminates the application. При нажатии кнопки повторить вы передаете вам код в отладчике, если приложение выполняется в отладчике, или предлагает открыть отладчик, если это не так.Clicking Retry sends you to the code in the debugger if your application is running in a debugger, or offers to open a debugger if it is not. Нажатие кнопки пропустить продолжится с помощью следующей инструкции в коде.Clicking Ignore continues with the next instruction in the code.

Примечание

Отображение окна сообщения зависит от наличия DefaultTraceListener .The display of the message box depends on the presence of the DefaultTraceListener. Если объект DefaultTraceListener отсутствует в Listeners коллекции, окно сообщения не отображается.If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. DefaultTraceListenerМожно удалить с помощью < > clear, < Remove > или путем вызова Clear метода Listeners Свойства ( System.Diagnostics.Trace.Listeners.Clear() ).The DefaultTraceListener can be removed by the <clear>, the <remove>, or by calling the Clear method on the Listeners property (System.Diagnostics.Trace.Listeners.Clear()).

Поведение можно изменить DefaultTraceListener в файле конфигурации, соответствующем имени приложения.You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. В этом файле можно включить и отключить окно сообщения утверждения или задать DefaultTraceListener.LogFileName свойство.In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. Файл конфигурации следует отформатировать следующим образом:The configuration file should be formatted as follows:

<configuration>  
  <system.diagnostics>  
    <assert assertuienabled="true" logfilename="c:\\myFile.log" />  
  </system.diagnostics>  
</configuration>  

См. также раздел

Применяется к

Assert(Boolean, String, String, Object[])

Проверяет условие; если условие имеет значение false, выводит два сообщения (простое и отформатированное) и отображает окно сообщения со стеком вызовов.Checks for a condition; if the condition is false, outputs two messages (simple and formatted) and displays a message box that shows the call stack.

public:
 static void Assert(bool condition, System::String ^ message, System::String ^ detailMessageFormat, ... cli::array <System::Object ^> ^ args);
[System.Diagnostics.Conditional("DEBUG")]
public static void Assert (bool condition, string message, string detailMessageFormat, params object[] args);
[System.Diagnostics.Conditional("DEBUG")]
public static void Assert (bool condition, string? message, string detailMessageFormat, params object?[] args);
[<System.Diagnostics.Conditional("DEBUG")>]
static member Assert : bool * string * string * obj[] -> unit
static member Assert : bool * string * string * obj[] -> unit
Public Shared Sub Assert (condition As Boolean, message As String, detailMessageFormat As String, ParamArray args As Object())

Параметры

condition
Boolean

Условное выражение для вычисления.The conditional expression to evaluate. Если условие имеет значение true, указанные сообщения не отправляются и окно сообщения не отображается.If the condition is true, the specified messages are not sent and the message box is not displayed.

message
String

Сообщение для отправки в коллекцию Listeners.The message to send to the Listeners collection.

detailMessageFormat
String

Строка составного формата для отправки в коллекцию Listeners.The composite format string to send to the Listeners collection. Это сообщение содержит текст, перемежаемый нулем или несколькими элементами форматирования, которые соответствуют объектам массива args.This message contains text intermixed with zero or more format items, which correspond to objects in the args array.

args
Object[]

Массив объектов, содержащий нуль или более форматируемых объектов.An object array that contains zero or more objects to format.

Атрибуты

Комментарии

Этот метод использует функцию составного форматирования .NET для преобразования значения объекта в текстовое представление и внедрения этого представления в строку.This method uses the .NET composite formatting feature to convert the value of an object to its text representation and embed that representation in a string. Результирующая строка отправляется в Listeners коллекцию.The resulting string is sent to the Listeners collection.

По умолчанию Debug.Assert метод работает только в отладочных сборках.By default, the Debug.Assert method works only in debug builds. Используйте Trace.Assert метод, если вы хотите выполнять утверждения в сборках выпуска.Use the Trace.Assert method if you want to do assertions in release builds. Дополнительные сведения см. в разделе Утверждения в управляемом коде.For more information, see Assertions in Managed Code.

Как правило, Assert(Boolean, String, String, Object[]) метод используется для обнаружения логических ошибок во время разработки программы.Typically, the Assert(Boolean, String, String, Object[]) method is used to identify logic errors during program development. Assert вычисляет условие.Assert evaluates the condition. Если результат равен false , String.Format(String, Object[]) вызывается метод, а detailMessageFormat строка и args массив передаются в качестве параметров.If the result is false, The String.Format(String, Object[]) method is called and the detailMessageFormat string and args array are passed in as parameters. Assert(Boolean, String, String, Object[]) затем отправляет указанное текстовое сообщение и форматированное текстовое сообщение в Listeners коллекцию.Assert(Boolean, String, String, Object[]) then sends the specified text message and the formatted text message to the Listeners collection. Это поведение можно настроить, добавив TraceListener в коллекцию или удалив одну из них Listeners .You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

При выполнении приложения в режиме пользовательского интерфейса отображается окно сообщения, в котором показан стек вызовов с номерами файла и строки.When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. Окно сообщения содержит три кнопки: прервать, повторить и пропустить.The message box contains three buttons: Abort, Retry, and Ignore. Нажатие кнопки прервать завершает работу приложения.Clicking the Abort button terminates the application. При нажатии кнопки повторить вы передаете вам код в отладчике, если приложение выполняется в отладчике, или предлагает открыть отладчик, если это не так.Clicking Retry sends you to the code in the debugger if your application is running in a debugger, or offers to open a debugger if it is not. Нажатие кнопки пропустить продолжится с помощью следующей инструкции в коде.Clicking Ignore continues with the next instruction in the code.

Примечание

Отображение окна сообщения зависит от наличия DefaultTraceListener .The display of the message box is dependent on the presence of the DefaultTraceListener. Если объект DefaultTraceListener отсутствует в Listeners коллекции, окно сообщения не отображается.If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. DefaultTraceListenerМожно удалить с помощью < > clear, < Remove > или путем вызова Clear метода Listeners Свойства ( System.Diagnostics.Trace.Listeners.Clear() ).The DefaultTraceListener can be removed by the <clear>, the <remove>, or by calling the Clear method on the Listeners property (System.Diagnostics.Trace.Listeners.Clear()).

Поведение можно изменить DefaultTraceListener в файле конфигурации, соответствующем имени приложения.You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. В этом файле можно включить и отключить окно сообщения утверждения или задать DefaultTraceListener.LogFileName свойство.In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. Файл конфигурации следует отформатировать следующим образом:The configuration file should be formatted as follows:

<configuration>  
  <system.diagnostics>  
    <assert assertuienabled="true" logfilename="c:\\myFile.log" />  
  </system.diagnostics>  
</configuration>  

Применяется к