Delen via


WorkflowInstanceId ophalen

Het voorbeeld GetWorkflowInstanceId laat zien hoe u de aangepaste activiteit GetWorkflowInstanceId gebruikt om de id van het werkstroomexemplaren te retourneren.

Demonstreert

Ontwikkeling van aangepaste activiteiten, toegang tot het werkstroomexemplaren.

Discussie

Voor het ophalen van de exemplaar-id van een actieve werkstroom is het schrijven van code vereist. Als u een volledig declaratieve werkstroom wilt schrijven, hebt u een activiteit nodig die de id van het werkstroomexemplaren kan retourneren, zodat naar de activiteit in de werkstroom kan worden verwezen om een volledig declaratieve werkstroomcreatie te bieden. Veel scenario's vereisen toegang tot de exemplaar-id: een paar voorbeelden zijn voor logboekregistratie- of controledoeleinden of voor het uitvoeren van correlatie op toepassingsniveau door de exemplaar-id terug te geven aan een client voor toekomstige koppeling (bijvoorbeeld door deze activiteit binnen een SendReply-activiteit te gebruiken).

GetWorkflowInstanceId wordt geïmplementeerd als een CodeActivity<TResult> omdat deze een waarde van het type Guidmoet retourneren en moet toegang hebben tot de CodeActivityContext instantie-id van de werkstroom. De implementatie ervan is vrij eenvoudig.

public sealed class GetWorkflowInstanceId : CodeActivity<Guid>
{
    protected override Guid Execute(CodeActivityContext context)
    {
        return context.WorkflowInstanceId;
    }
}