WorkflowApplicationUnhandledExceptionEventArgs Classe

Definizione

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à
WorkflowApplicationUnhandledExceptionEventArgs

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)

Si applica a