WorkflowApplicationUnhandledExceptionEventArgs Classe
Definizione
Importante
Alcune informazioni sono relative alla release non definitiva del prodotto, che potrebbe subire modifiche significative prima della release definitiva. Microsoft non riconosce alcuna garanzia, espressa o implicita, in merito alle informazioni qui fornite.
Fornisce informazioni su un'eccezione non gestita che si è verificata in un'istanza del flusso di lavoro.
public ref class WorkflowApplicationUnhandledExceptionEventArgs : System::Activities::WorkflowApplicationEventArgs
public class WorkflowApplicationUnhandledExceptionEventArgs : System.Activities.WorkflowApplicationEventArgs
type WorkflowApplicationUnhandledExceptionEventArgs = class
inherit WorkflowApplicationEventArgs
Public Class WorkflowApplicationUnhandledExceptionEventArgs
Inherits WorkflowApplicationEventArgs
- Ereditarietà
Esempio
Nell'esempio seguente viene richiamato un flusso di lavoro che genera un'eccezione. L'eccezione non viene gestita dal flusso di lavoro e viene richiamato il gestore OnUnhandledException. Il WorkflowApplicationUnhandledExceptionEventArgs viene controllato per fornire informazioni sull'eccezione e il flusso di lavoro viene terminato.
Activity wf = new Sequence
{
Activities =
{
new WriteLine
{
Text = "Starting the workflow."
},
new Throw
{
Exception = new InArgument<Exception>((env) =>
new ApplicationException("Something unexpected happened."))
},
new WriteLine
{
Text = "Ending the workflow."
}
}
};
WorkflowApplication wfApp = new WorkflowApplication(wf);
wfApp.OnUnhandledException = delegate(WorkflowApplicationUnhandledExceptionEventArgs e)
{
// Display the unhandled exception.
Console.WriteLine("OnUnhandledException in Workflow {0}\n{1}",
e.InstanceId, e.UnhandledException.Message);
Console.WriteLine("ExceptionSource: {0} - {1}",
e.ExceptionSource.DisplayName, e.ExceptionSourceInstanceId);
// Instruct the runtime to terminate the workflow.
return UnhandledExceptionAction.Terminate;
// Other choices are UnhandledExceptionAction.Abort and
// UnhandledExceptionAction.Cancel
};
wfApp.Run();
Commenti
Se un'eccezione viene generata da un'attività e non gestita, il comportamento predefinito consiste nell'terminare l'istanza del flusso di lavoro. Se è presente un OnUnhandledException gestore, può eseguire l'override di questo comportamento predefinito. Questo gestore consente all'autore dell'host del flusso di lavoro di fornire la gestione appropriata, ad esempio la registrazione personalizzata, l'interruzione del flusso di lavoro, l'annullamento del flusso di lavoro o la chiusura del flusso di lavoro.
Proprietà
| Nome | Descrizione |
|---|---|
| ExceptionSource |
Ottiene l'attività che rappresenta l'origine dell'eccezione non gestita. |
| ExceptionSourceInstanceId |
Ottiene l'identificatore univoco dell'istanza dell'attività che rappresenta l'origine dell'eccezione non gestita. |
| InstanceId |
Identificatore univoco dell'istanza del flusso di lavoro. (Ereditato da WorkflowApplicationEventArgs) |
| UnhandledException |
Ottiene l'oggetto Exception non gestito dall'istanza del flusso di lavoro. |
Metodi
| Nome | Descrizione |
|---|---|
| Equals(Object) |
Determina se l'oggetto specificato è uguale all'oggetto corrente. (Ereditato da Object) |
| GetHashCode() |
Funge da funzione hash predefinita. (Ereditato da Object) |
| GetInstanceExtensions<T>() |
Ottiene la raccolta di estensioni del tipo specificato. (Ereditato da WorkflowApplicationEventArgs) |
| GetType() |
Ottiene il Type dell'istanza corrente. (Ereditato da Object) |
| MemberwiseClone() |
Crea una copia superficiale del Objectcorrente. (Ereditato da Object) |
| ToString() |
Restituisce una stringa che rappresenta l'oggetto corrente. (Ereditato da Object) |