Ler em inglês

Partilhar via


WorkflowApplicationUnhandledExceptionEventArgs Classe

Definição

Fornece informações sobre uma exceção sem tratamento ocorrida em uma instância de fluxo de trabalho.

C#
public class WorkflowApplicationUnhandledExceptionEventArgs : System.Activities.WorkflowApplicationEventArgs
Herança
WorkflowApplicationUnhandledExceptionEventArgs

Exemplos

O exemplo a seguir chama um fluxo de trabalho que gerencia uma exceção. A exceção é não tratados pelo fluxo de trabalho e o manipulador de OnUnhandledException é chamado. WorkflowApplicationUnhandledExceptionEventArgs é inspecionado para fornecer informações sobre a exceção, e fluxo de trabalho é encerrado.

C#
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();

Comentários

Se uma exceção é acionada por uma atividade e é não tratada, o comportamento padrão é finalizar a instância de fluxo de trabalho. Se um OnUnhandledException manipulador estiver presente, ele poderá substituir esse comportamento padrão. Esse manipulador fornece o autor do host de fluxo de trabalho uma oportunidade para fornecer tratamento apropriado, como o log personalizado, anulando o fluxo de trabalho, cancelar o fluxo de trabalho, ou de terminação o fluxo de trabalho.

Propriedades

ExceptionSource

Obtém a atividade que é a origem da exceção sem tratamento.

ExceptionSourceInstanceId

Obtém o identificador exclusivo da instância de atividade que é a origem da exceção sem tratamento.

InstanceId

O identificador exclusivo da instância do fluxo de trabalho.

(Herdado de WorkflowApplicationEventArgs)
UnhandledException

Obtém a Exception que não foi tratada pela instância de fluxo de trabalho.

Métodos

Equals(Object)

Determina se o objeto especificado é igual ao objeto atual.

(Herdado de Object)
GetHashCode()

Serve como a função de hash padrão.

(Herdado de Object)
GetInstanceExtensions<T>()

Obtém a coleção de extensões do tipo especificado.

(Herdado de WorkflowApplicationEventArgs)
GetType()

Obtém o Type da instância atual.

(Herdado de Object)
MemberwiseClone()

Cria uma cópia superficial do Object atual.

(Herdado de Object)
ToString()

Retorna uma cadeia de caracteres que representa o objeto atual.

(Herdado de Object)

Aplica-se a

Produto Versões
.NET Framework 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1