WorkflowApplicationUnhandledExceptionEventArgs Classe
Definição
Importante
Algumas informações dizem respeito a um produto pré-lançado que pode ser substancialmente modificado antes de ser lançado. A Microsoft não faz garantias, de forma expressa ou implícita, em relação à informação aqui apresentada.
Fornece informação sobre uma exceção não tratada que ocorreu numa instância de workflow.
public ref class WorkflowApplicationUnhandledExceptionEventArgs : System::Activities::WorkflowApplicationEventArgs
public class WorkflowApplicationUnhandledExceptionEventArgs : System.Activities.WorkflowApplicationEventArgs
type WorkflowApplicationUnhandledExceptionEventArgs = class
inherit WorkflowApplicationEventArgs
Public Class WorkflowApplicationUnhandledExceptionEventArgs
Inherits WorkflowApplicationEventArgs
- Herança
Exemplos
O exemplo a seguir invoca um fluxo de trabalho que gera uma exceção. A exceção não é tratada pelo fluxo de trabalho e o manipulador de OnUnhandledException é invocado. Os WorkflowApplicationUnhandledExceptionEventArgs são inspecionados para fornecer informações sobre a exceção e o fluxo de trabalho é encerrado.
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();
Observações
Se uma exceção for lançada por uma atividade e não for tratada, o comportamento padrão será encerrar a instância do fluxo de trabalho. Se houver um OnUnhandledException handler presente, pode sobrepor este comportamento padrão. Esse manipulador dá ao autor do host do fluxo de trabalho a oportunidade de fornecer o tratamento apropriado, como registro em log personalizado, cancelamento do fluxo de trabalho, cancelamento do fluxo de trabalho ou encerramento do fluxo de trabalho.
Propriedades
| Name | Description |
|---|---|
| ExceptionSource |
Obtém a atividade que é a origem da exceção não tratada. |
| ExceptionSourceInstanceId |
Obtém o identificador único da instância de atividade que é a origem da exceção não tratada. |
| InstanceId |
O identificador único da instância do workflow. (Herdado de WorkflowApplicationEventArgs) |
| UnhandledException |
Obtém o Exception que não foi tratado pela instância do workflow. |
Métodos
| Name | Description |
|---|---|
| Equals(Object) |
Determina se o objeto especificado é igual ao objeto atual. (Herdado de Object) |
| GetHashCode() |
Serve como função de hash predefinida. (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 atual Object. (Herdado de Object) |
| ToString() |
Devolve uma cadeia que representa o objeto atual. (Herdado de Object) |