Debug.Assert Debug.Assert Debug.Assert Debug.Assert Method

Definizione

Controlla una condizione. Se la condizione è false, vengono generati messaggi e viene visualizzata una finestra di messaggio contenente lo stack di chiamate.Checks for a condition; if the condition is false, outputs messages and displays a message box that shows the call stack.

Overload

Assert(Boolean) Assert(Boolean) Assert(Boolean) Assert(Boolean)

Controlla una condizione. Se la condizione è false, viene visualizzata una finestra di messaggio contenente lo stack di chiamate.Checks for a condition; if the condition is false, displays a message box that shows the call stack.

Assert(Boolean, String) Assert(Boolean, String) Assert(Boolean, String) Assert(Boolean, String)

Controlla una condizione. Se la condizione è false, genera un messaggio specificato e visualizza una finestra di messaggio contenente lo stack di chiamate.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) Assert(Boolean, String, String) Assert(Boolean, String, String) Assert(Boolean, String, String)

Controlla una condizione. Se la condizione è false, vengono generati due messaggi specificati e viene visualizzata una finestra di messaggio contenente lo stack di chiamate.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[]) Assert(Boolean, String, String, Object[]) Assert(Boolean, String, String, Object[]) Assert(Boolean, String, String, Object[])

Controlla una condizione. Se la condizione è false, vengono generati due messaggi (semplice e formattato) e viene visualizzata una finestra di messaggio contenente lo stack di chiamate.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) Assert(Boolean) Assert(Boolean) Assert(Boolean)

Controlla una condizione. Se la condizione è false, viene visualizzata una finestra di messaggio contenente lo stack di chiamate.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);
static member Assert : bool -> unit
Public Shared Sub Assert (condition As Boolean)

Parametri

condition
Boolean Boolean Boolean Boolean

Espressione condizionale da valutare.The conditional expression to evaluate. Se la condizione è true, non viene inviato un messaggio di errore e la finestra di messaggio non viene visualizzata.If the condition is true, a failure message is not sent and the message box is not displayed.

Esempi

Nell'esempio seguente viene creato un indice per una matrice, esegue un'azione per impostare il valore dell'indice e quindi chiama Assert per confermare che il valore di indice è valido.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. Se non è valido, Assert restituisce lo stack di chiamate.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))

Commenti

Per impostazione predefinita, il Debug.Assert metodo funziona solo nelle build di debug.By default, the Debug.Assert method works only in debug builds. Usare il Trace.Assert metodo se si desidera effettuare asserzioni in versione di build.Use the Trace.Assert method if you want to do assertions in release builds. Per ulteriori informazioni, vedere Asserzioni nel metodo gestito.For more information, see Assertions in Managed Code.

Importante

Il Assert metodi non sono disponibili per Windows StoreWindows Store app.The Assert methods are not available for Windows StoreWindows Store apps.

In genere, il Assert(Boolean) metodo viene utilizzato per identificare errori logici durante lo sviluppo di programmi.Typically, the Assert(Boolean) method is used to identify logic errors during program development. Assert valuta la condizione.Assert evaluates the condition. Se il risultato viene false, viene inviato un messaggio di errore per il Listeners raccolta.If the result is false, it sends a failure message to the Listeners collection. È possibile personalizzare questo comportamento aggiungendo un' TraceListener a, o la rimozione di uno, il Listeners raccolta.You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

Quando l'applicazione viene eseguita in modalità di interfaccia utente, viene visualizzata una finestra di messaggio che indica lo stack di chiamate con i numeri di file e riga.When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. La finestra di messaggio contiene tre pulsanti: Interrompere, Riprova, e ignorare.The message box contains three buttons: Abort, Retry, and Ignore. Facendo clic sui Abort pulsante Termina l'applicazione.Clicking the Abort button terminates the application. Facendo clic ripetere invia al codice nel debugger se l'applicazione è in esecuzione in un debugger o offre per aprire un debugger in caso contrario.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. Facendo clic Ignore continua con l'istruzione successiva nel codice.Clicking Ignore continues with the next instruction in the code.

Nota

Windows 8.x StoreWindows 8.x Store le app non supportano finestre di dialogo modale, in modo che funzionino correttamente in modalità interfaccia utente e non di interfaccia utente.apps do not support modal dialog boxes, so they behave the same in user interface mode and non-user interface mode. Il messaggio viene scritto nei listener di traccia attiva in modalità di debug o nessun messaggio viene scritto in modalità di rilascio.The message is written to the active trace listeners in debugging mode, or no message is written in release mode.

Nota

La visualizzazione della finestra di messaggio dipende dalla presenza del DefaultTraceListener.The display of the message box depends on the presence of the DefaultTraceListener. Se il DefaultTraceListener non si trova nel Listeners insieme, la finestra di messaggio non viene visualizzata.If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. Il DefaultTraceListener può essere rimossa mediante il <deselezionare>, la <rimuovere>, oppure chiamando il Clear metodo su di Listeners proprietà (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()).

È possibile modificare il comportamento del DefaultTraceListener nel file di configurazione che corrisponde al nome dell'applicazione.You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. In questo file, è possibile abilitare e disabilitare la finestra di messaggio assert o impostare il DefaultTraceListener.LogFileName proprietà.In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. Il file di configurazione deve essere formattato come segue:The configuration file should be formatted as follows:

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

Assert(Boolean, String) Assert(Boolean, String) Assert(Boolean, String) Assert(Boolean, String)

Controlla una condizione. Se la condizione è false, genera un messaggio specificato e visualizza una finestra di messaggio contenente lo stack di chiamate.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);
static member Assert : bool * string -> unit
Public Shared Sub Assert (condition As Boolean, message As String)

Parametri

condition
Boolean Boolean Boolean Boolean

Espressione condizionale da valutare.The conditional expression to evaluate. Se la condizione è true, il messaggio specificato non viene inviato e la finestra di messaggio non viene visualizzata.If the condition is true, the specified message is not sent and the message box is not displayed.

message
String String String String

Messaggio da inviare alla raccolta di Listeners.The message to send to the Listeners collection.

Esempi

Nell'esempio seguente viene controllato se il type parametro è valido.The following example checks whether the type parameter is valid. Se type viene null, Assert restituisce un messaggio.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 'MyMethod 

Commenti

Per impostazione predefinita, il Debug.Assert metodo funziona solo nelle build di debug.By default, the Debug.Assert method works only in debug builds. Usare il Trace.Assert metodo se si desidera effettuare asserzioni in versione di build.Use the Trace.Assert method if you want to do assertions in release builds. Per ulteriori informazioni, vedere Asserzioni nel metodo gestito.For more information, see Assertions in Managed Code.

In genere, il Assert metodo viene utilizzato per identificare errori logici durante lo sviluppo di programmi.Typically, the Assert method is used to identify logic errors during program development. Assert valuta la condizione.Assert evaluates the condition. Se il risultato viene false, invia il messaggio di diagnostica specificato per il Listeners raccolta.If the result is false, it sends the specified diagnostic message to the Listeners collection. È possibile personalizzare questo comportamento aggiungendo un' TraceListener a, o la rimozione di uno, il Listeners raccolta.You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

Quando l'applicazione viene eseguita in modalità di interfaccia utente, viene visualizzata una finestra di messaggio che indica lo stack di chiamate con i numeri di file e riga.When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. La finestra di messaggio contiene tre pulsanti: Interrompere, Riprova, e ignorare.The message box contains three buttons: Abort, Retry, and Ignore. Facendo clic sui Abort pulsante Termina l'applicazione.Clicking the Abort button terminates the application. Facendo clic ripetere invia al codice nel debugger se l'applicazione è in esecuzione in un debugger o offre per aprire un debugger in caso contrario.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. Facendo clic Ignore continua con l'istruzione successiva nel codice.Clicking Ignore continues with the next instruction in the code.

Nota

La visualizzazione della finestra di messaggio dipende dalla presenza del DefaultTraceListener.The display of the message box depends on the presence of the DefaultTraceListener. Se il DefaultTraceListener non si trova nel Listeners insieme, la finestra di messaggio non viene visualizzata.If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. Il DefaultTraceListener può essere rimossa mediante il <deselezionare>, la <rimuovere>, oppure chiamando il Clear metodo su di Listeners proprietà (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()).

È possibile modificare il comportamento del DefaultTraceListener nel file di configurazione che corrisponde al nome dell'applicazione.You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. In questo file, è possibile abilitare e disabilitare la finestra di messaggio assert o impostare il DefaultTraceListener.LogFileName proprietà.In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. Il file di configurazione deve essere formattato come segue:The configuration file should be formatted as follows:

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

Assert(Boolean, String, String) Assert(Boolean, String, String) Assert(Boolean, String, String) Assert(Boolean, String, String)

Controlla una condizione. Se la condizione è false, vengono generati due messaggi specificati e viene visualizzata una finestra di messaggio contenente lo stack di chiamate.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);
static member Assert : bool * string * string -> unit
Public Shared Sub Assert (condition As Boolean, message As String, detailMessage As String)

Parametri

condition
Boolean Boolean Boolean Boolean

Espressione condizionale da valutare.The conditional expression to evaluate. Se la condizione è true, i messaggi specificati non vengono inviati e la finestra di messaggio non viene visualizzata.If the condition is true, the specified messages are not sent and the message box is not displayed.

message
String String String String

Messaggio da inviare alla raccolta di Listeners.The message to send to the Listeners collection.

detailMessage
String String String String

Messaggio dettagliato da inviare all'insieme Listeners.The detailed message to send to the Listeners collection.

Esempi

Nell'esempio seguente viene controllato se il type parametro è valido.The following example checks whether the type parameter is valid. Se type viene null, Assert generati due messaggi.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 'MyMethod

Commenti

Per impostazione predefinita, il Debug.Assert metodo funziona solo nelle build di debug.By default, the Debug.Assert method works only in debug builds. Usare il Trace.Assert metodo se si desidera effettuare asserzioni in versione di build.Use the Trace.Assert method if you want to do assertions in release builds. Per ulteriori informazioni, vedere Asserzioni nel metodo gestito.For more information, see Assertions in Managed Code.

In genere, il Assert(Boolean, String, String) metodo viene utilizzato per identificare errori logici durante lo sviluppo di programmi.Typically, the Assert(Boolean, String, String) method is used to identify logic errors during program development. Assert valuta la condizione.Assert evaluates the condition. Se il risultato viene false, invia il messaggio di diagnostica specificato e il messaggio dettagliato dal Listeners raccolta.If the result is false, it sends the specified diagnostic message and detailed message to the Listeners collection. È possibile personalizzare questo comportamento aggiungendo un' TraceListener a, o la rimozione di uno, il Listeners raccolta.You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

Quando l'applicazione viene eseguita in modalità di interfaccia utente, viene visualizzata una finestra di messaggio che indica lo stack di chiamate con i numeri di file e riga.When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. La finestra di messaggio contiene tre pulsanti: Interrompere, Riprova, e ignorare.The message box contains three buttons: Abort, Retry, and Ignore. Facendo clic sui Abort pulsante Termina l'applicazione.Clicking the Abort button terminates the application. Facendo clic ripetere invia al codice nel debugger se l'applicazione è in esecuzione in un debugger o offre per aprire un debugger in caso contrario.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. Facendo clic Ignore continua con l'istruzione successiva nel codice.Clicking Ignore continues with the next instruction in the code.

Nota

La visualizzazione della finestra di messaggio dipende dalla presenza del DefaultTraceListener.The display of the message box depends on the presence of the DefaultTraceListener. Se il DefaultTraceListener non si trova nel Listeners insieme, la finestra di messaggio non viene visualizzata.If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. Il DefaultTraceListener può essere rimossa mediante il <deselezionare>, la <rimuovere>, oppure chiamando il Clear metodo su di Listeners proprietà (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()).

È possibile modificare il comportamento del DefaultTraceListener nel file di configurazione che corrisponde al nome dell'applicazione.You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. In questo file, è possibile abilitare e disabilitare la finestra di messaggio assert o impostare il DefaultTraceListener.LogFileName proprietà.In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. Il file di configurazione deve essere formattato come segue:The configuration file should be formatted as follows:

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

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

Controlla una condizione. Se la condizione è false, vengono generati due messaggi (semplice e formattato) e viene visualizzata una finestra di messaggio contenente lo stack di chiamate.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);
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())

Parametri

condition
Boolean Boolean Boolean Boolean

Espressione condizionale da valutare.The conditional expression to evaluate. Se la condizione è true, i messaggi specificati non vengono inviati e la finestra di messaggio non viene visualizzata.If the condition is true, the specified messages are not sent and the message box is not displayed.

message
String String String String

Messaggio da inviare alla raccolta di Listeners.The message to send to the Listeners collection.

detailMessageFormat
String String String String

Stringa di formato composito da inviare alla raccolta Listeners.The composite format string to send to the Listeners collection. Questo messaggio contiene testo combinato con zero o più elementi di formato, che corrispondono a oggetti nella matrice args.This message contains text intermixed with zero or more format items, which correspond to objects in the args array.

args
Object[]

Matrice di oggetti che contiene zero o più oggetti da formattare.An object array that contains zero or more objects to format.

Commenti

Questo metodo Usa il di .NET Framework per convertire il valore di un oggetto nella relativa rappresentazione di testo e incorporare la rappresentazione in una stringa.This method uses the of the .NET Framework to convert the value of an object to its text representation and embed that representation in a string. La stringa risultante viene inviata al Listeners raccolta.The resulting string is sent to the Listeners collection.

Per impostazione predefinita, il Debug.Assert metodo funziona solo nelle build di debug.By default, the Debug.Assert method works only in debug builds. Usare il Trace.Assert metodo se si desidera effettuare asserzioni in versione di build.Use the Trace.Assert method if you want to do assertions in release builds. Per ulteriori informazioni, vedere Asserzioni nel metodo gestito.For more information, see Assertions in Managed Code.

In genere, il Assert(Boolean, String, String, Object[]) metodo viene utilizzato per identificare errori logici durante lo sviluppo di programmi.Typically, the Assert(Boolean, String, String, Object[]) method is used to identify logic errors during program development. Assert valuta la condizione.Assert evaluates the condition. Se il risultato viene false, il String.Format(String, Object[]) viene chiamato il metodo e il detailMessageFormat stringa e args matrice vengono passati come parametri.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[]) quindi invia il messaggio di testo specificato e il messaggio di testo formattato dal Listeners raccolta.Assert(Boolean, String, String, Object[]) then sends the specified text message and the formatted text message to the Listeners collection. È possibile personalizzare questo comportamento aggiungendo un' TraceListener a, o la rimozione di uno, il Listeners raccolta.You can customize this behavior by adding a TraceListener to, or removing one from, the Listeners collection.

Quando l'applicazione viene eseguita in modalità di interfaccia utente, viene visualizzata una finestra di messaggio che indica lo stack di chiamate con i numeri di file e riga.When the application runs in user interface mode, it displays a message box that shows the call stack with file and line numbers. La finestra di messaggio contiene tre pulsanti: Interrompere, Riprova, e ignorare.The message box contains three buttons: Abort, Retry, and Ignore. Facendo clic sui Abort pulsante Termina l'applicazione.Clicking the Abort button terminates the application. Facendo clic ripetere invia al codice nel debugger se l'applicazione è in esecuzione in un debugger o offre per aprire un debugger in caso contrario.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. Facendo clic Ignore continua con l'istruzione successiva nel codice.Clicking Ignore continues with the next instruction in the code.

Nota

La visualizzazione della finestra di messaggio dipende dalla presenza del DefaultTraceListener.The display of the message box is dependent on the presence of the DefaultTraceListener. Se il DefaultTraceListener non si trova nel Listeners insieme, la finestra di messaggio non viene visualizzata.If the DefaultTraceListener is not in the Listeners collection, the message box is not displayed. Il DefaultTraceListener può essere rimossa mediante il <deselezionare>, la <rimuovere>, oppure chiamando il Clear metodo su di Listeners proprietà (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()).

È possibile modificare il comportamento del DefaultTraceListener nel file di configurazione che corrisponde al nome dell'applicazione.You can change the behavior of the DefaultTraceListener in the configuration file that corresponds to the name of your application. In questo file, è possibile abilitare e disabilitare la finestra di messaggio assert o impostare il DefaultTraceListener.LogFileName proprietà.In this file, you can enable and disable the assert message box or set the DefaultTraceListener.LogFileName property. Il file di configurazione deve essere formattato come segue:The configuration file should be formatted as follows:

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

Si applica a