Delen via


Eindpunt voor werkstroombeheer

Met het eindpunt voor werkstroombeheer kunnen ontwikkelaars besturingsbewerkingen aanroepen om werkstroomexemplaren die worden gehost op afstand te beheren met behulp van WorkflowServiceHost. Deze functie kan worden gebruikt om programmatisch besturingsbewerkingen uit te voeren, zoals onderbreken, hervatten en beëindigen.

Waarschuwing

Als u het eindpunt voor werkstroombeheer binnen een transactie gebruikt en de werkstroom die wordt beheerd een Persist activiteit bevat, wordt het werkstroomexemplaren geblokkeerd totdat er een time-out optreedt voor de transactie.

Beheer van werkstroomexemplaren

.NET Framework 4.6.1 definieert een nieuw contract met de naam IWorkflowInstanceManagement. Dit contract definieert een reeks besturingsbewerkingen waarmee u werkstroomexemplaren die worden gehost WorkflowServiceHostop afstand kunt beheren. WorkflowControlEndpoint is een standaardeindpunt dat een implementatie van het IWorkflowInstanceManagement contract biedt. WorkflowControlClient is een klasse die wordt gebruikt om de besturingsbewerkingen naar de WorkflowControlEndpoint.

Werkstroomexemplaren kunnen een van de volgende statussen hebben:

Actief
De status van een werkstroomexemplaren voordat deze de voltooide status bereikt en wanneer deze zich niet in de onderbroken status bevindt. Terwijl het werkstroomexemplaren deze status hebben, worden toepassingsberichten uitgevoerd en verwerkt.

Onderbroken
In deze status wordt het werkstroomexemplaren niet uitgevoerd, zelfs niet als er activiteiten zijn die niet zijn gestart of gedeeltelijk zijn uitgevoerd.

Voltooid
De uiteindelijke status van een werkstroomexemplaren. Het werkstroomexemplaren kunnen niet worden uitgevoerd nadat de voltooide status is bereikt.

IWorkflowInstanceManagement

De IWorkflowInstanceManagement interface definieert een set besturingsbewerkingen met synchrone en asynchrone versies. De transacted versies vereisen gebruik van een transactiebewuste binding. De volgende tabel bevat de ondersteunde besturingsbewerkingen.

Besturingsbewerking Beschrijving
Afbreken De uitvoering van het werkstroomexemplaren wordt geforceerd gestopt.
Annuleren Hiermee wordt een werkstroomexemplaren van de actieve of onderbroken status overgezet naar de voltooide status.
Uitvoeren Biedt een werkstroomexemplaren de mogelijkheid om uit te voeren.
Onderbreken Hiermee wordt een werkstroomexemplaren van de actieve status overgezet naar de onderbroken status.
Beëindigen Hiermee wordt een werkstroomexemplaren van de actieve of onderbroken status overgezet naar de voltooide status.
Niet-uspend Hiermee wordt een werkstroomexemplaren van de onderbroken status overgezet naar de actieve status.
TransactedCancel Voert de bewerking Annuleren uit onder een transactie (gestroomd vanaf de client of lokaal is gemaakt). Als het systeem de duurzame status van het werkstroomexemplaren behoudt, moet het werkstroomexemplaren behouden blijven tijdens de uitvoering van deze bewerking.
TransactedRun Voert de run-bewerking uit onder een transactie (gestroomd vanaf de client of lokaal gemaakt). Als het systeem de duurzame status van het werkstroomexemplaren behoudt, moet het werkstroomexemplaren behouden blijven tijdens de uitvoering van deze bewerking.
TransactedSuspend Hiermee wordt de bewerking Onderbreken uitgevoerd onder een transactie (gestroomd vanaf de client of lokaal gemaakt). Als het systeem de duurzame status van het werkstroomexemplaren behoudt, moet het werkstroomexemplaren behouden blijven tijdens de uitvoering van deze bewerking.
TransactedTerminate Hiermee wordt de bewerking Beëindigen uitgevoerd onder een transactie (gestroomd vanaf de client of lokaal gemaakt). Als het systeem de duurzame status van het werkstroomexemplaren behoudt, moet het werkstroomexemplaren behouden blijven tijdens de uitvoering van deze bewerking.
TransactedUnsuspend Voert de bewerking Unsuspend uit onder een transactie (gestroomd vanaf de client of lokaal is gemaakt). Als het systeem de duurzame status van het werkstroomexemplaren behoudt, moet het werkstroomexemplaren behouden blijven tijdens de uitvoering van deze bewerking.

Het IWorkflowInstanceManagement contract biedt geen middelen om een nieuw werkstroomexemplaren te maken, alleen om bestaande werkstroomexemplaren te beheren. Zie De uitbreidbaarheid van werkstroomhosts voor meer informatie over het extern maken van een nieuw werkstroomexemplaren.

WorkflowControlEndpoint

WorkflowControlEndpointis een standaardeindpunt met een vast contract. IWorkflowInstanceManagement Wanneer dit eindpunt wordt toegevoegd aan een WorkflowServiceHost exemplaar, kan dit eindpunt vervolgens worden gebruikt om opdrachtbewerkingen te verzenden naar een werkstroomexemplaren die worden gehost door het hostexemplaren. Zie Standard-eindpunten voor meer informatie over standaardeindpunten.

WorkflowControlClient

WorkflowControlClient is een klasse waarmee u besturingsberichten naar een op een WorkflowControlEndpointWorkflowServiceHostkunt verzenden. Het bevat een methode voor elk van de bewerkingen die door het IWorkflowInstanceManagement contract worden ondersteund, met uitzondering van de transacties. WorkflowControlClient gebruikt de omgevingstransactie om te bepalen of een transacted bewerking moet worden gebruikt.