Compartilhar via


Como: configurar um comportamento de exceção sem tratamento de fluxo de trabalho com WorkflowServiceHost

WorkflowUnhandledExceptionBehavior é um comportamento que permite especificar a ação a ser executada se ocorrer uma exceção sem tratamento em um fluxo de trabalho hospedado em WorkflowServiceHost. Este tópico mostra como configurar esse comportamento em um arquivo de configuração.

Para configurar WorkflowUnhandledExceptionBehavior

  1. Adicione um elemento <workflowUnhandledException> em um elemento <behavior> dentro de um elemento <serviceBehaviors>, usando o atributo action para especificar a ação a ser tomada quando ocorre uma exceção sem tratamento conforme mostrado no exemplo a seguir.

    <behaviors>  
      <serviceBehaviors>  
        <behavior name="">  
          <workflowUnhandledException action="abandonAndSuspend"/>
        </behavior>  
      </serviceBehaviors>  
    </behaviors>  
    

    Observação

    O exemplo de configuração anterior está usando a configuração simplificada. Para obter mais informações, consulte Configuração simplificada.

    Esse comportamento pode ser configurado no código conforme mostrado no exemplo a seguir.

    host.Description.Behaviors.Add(new WorkflowUnhandledExceptionBehavior { Action = WorkflowUnhandledExceptionAction.AbandonAndSuspend });  
    

    O atributo action do elemento <workflowUnhandledException> pode ser definido com um dos seguintes valores:

    abandonar
    Aborta a instância na memória sem tocar no estado da instância persistente (ou seja, reverter para o último ponto de persistência).

    abandonAndSuspend
    Aborta a instância na memória e atualiza a instância persistente para ser suspensa.

    cancel
    Chama manipuladores de cancelamento para a instância e, em seguida, conclui a instância na memória, que também pode removê-la do armazenamento de instâncias

    {1&gt;terminate&lt;1}
    Conclui a instância na memória e a remove do repositório de instâncias.

    Para obter mais informações sobre WorkflowUnhandledExceptionBehavior, consulte Extensibilidade do host do serviço de fluxo de trabalho.

Confira também