Vorgehensweise: Konfigurieren des Verhaltens bei nicht behandelten Ausnahmen für Workflows mit WorkflowServiceHost

Das WorkflowUnhandledExceptionBehavior ist ein Verhalten, über das Sie die Aktion angeben können, die ausgeführt wird, wenn eine nicht behandelte Ausnahme innerhalb eines unter WorkflowServiceHost gehosteten Workflows auftritt. In diesem Thema wird erläutert, wie Sie dieses Verhalten in einer Konfigurationsdatei konfigurieren.

So konfigurieren Sie WorkflowUnhandledExceptionBehavior

  1. Fügen Sie ein <>workflowUnhandledException Element in einem Element innerhalb eines ><<serviceBehaviorsbehavior> Elements hinzu, indem Sie das action Attribut verwenden, um die auszuführende Aktion anzugeben, wenn eine unbehandelte Ausnahme auftritt, wie im folgenden Beispiel gezeigt.

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

    Hinweis

    Im vorangehenden Konfigurationsbeispiel wird die vereinfachte Konfiguration verwendet. Weitere Informationen finden Sie unter Erweiterte Konfiguration.

    Dieses Verhalten kann im Code konfiguriert werden, wie im folgenden Beispiel gezeigt.

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

    Das action Attribut des <workflowUnhandledException> Elements kann auf einen der folgenden Werte festgelegt werden:

    abandon
    Bricht die Instanz im Arbeitsspeicher ab, ohne den beibehaltenen Instanzzustand (also Rollback zum letzten Beibehaltungspunkt) zu ändern.

    abandonAndSuspend
    Bricht die Instanz im Arbeitsspeicher ab und aktualisiert die beibehaltene Instanz, die angehalten werden soll.

    cancel
    Ruft Abbruchhandler für die Instanz auf und schließt dann die Instanz im Arbeitsspeicher ab, wobei diese ggf. auch aus dem Instanzspeicher entfernt wird.

    terminate
    Schließt die Instanz im Arbeitsspeicher ab und entfernt diese aus dem Instanzspeicher.

    Weitere Informationen zu WorkflowUnhandledExceptionBehavior finden Sie unter Workflow Diensthost Erweiterbarkeit.

Siehe auch