Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Het voorbeeld GetWorkflowInstanceId laat zien hoe u de aangepaste activiteit GetWorkflowInstanceId gebruikt om de workflow instantie ID terug te geven.
Demonstreert
Ontwikkeling van aangepaste activiteiten, hoe u toegang krijgt tot de werkstroominstantie.
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 werkstroomexemplaar kan retourneren, zodat naar de activiteit in de werkstroom kan worden verwezen om een volledig declaratieve werkstroomervaring 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;
}
}