Raise Event to Load Workflow, exemple
Pour envoyer un document pour approbation, le workflow de cet exemple utilise l'activité CallExternalMethodActivity liée à la méthode RequestDocumentApproval de DocumentApprovalInterface. L'activité suivante du workflow est une activité HandleExternalEventActivity qui gère un événement DocumentApproved.
L'exécution est configurée pour décharger des instances de workflow chaque fois que le workflow est inactif, c'est-à-dire lorsque l'instance ne nécessite aucun travail. Il s'agit d'une fonctionnalité importante car l'activité HandleExternalEventActivity peut attendre pendant longtemps (parfois des jours ou des semaines) l'approbation d'un document.
DocumentApprovalInterface définit les méthodes et les événements permettant d'envoyer et de recevoir des approbations de document. La classe DocumentApprovalService implémente DocumentApprovalInterface pour les appels de méthode proxy et la gestion des événements qui entraînent la circulation de données dans le workflow et l'application d'hôte.
Le workflow initialise le processus d'approbation de document en envoyant un document pour approbation via la méthode RequestDocumentApproval qui remet ensuite le document à la cible (non implémenté). Le gestionnaire d'événements OnWorkflowIdled hôte est appelé lorsque le workflow devient inactif. Pendant ce temps, l'exécution décharge l'instance de workflow via FilePersistenceService. Dans le gestionnaire WorkflowIdled, nous déclenchons l'événement DocumentApproved dans le workflow. L'événement DocumentApproved est remis au gestionnaire HandleExternalEventActivitydocumentApprovedInvoked.
L'exemple utilise également un service de persistance personnalisé (FilePersistenceService) qui sérialise l'état du workflow dans un fichier.
Lorsque vous générez et exécutez l'application, le résultat obtenu ressemblera à ce qui suit :
Pour générer l'exemple
Téléchargez l'exemple en cliquant sur Télécharger l'exemple.
L'exemple de projet est alors extrait sur votre disque dur local.
Cliquez sur Démarrer, pointez sur Programmes, puis sur Microsoft Windows SDK et cliquez sur Environnement de commande.
Accédez au répertoire source de l'exemple.
À l'invite de commandes, tapez MSBUILD RaiseEventToLoadWorkflow.sln
Pour exécuter l'exemple
- Dans la fenêtre Invite de commandes du Kit de développement SDK, exécutez le fichier .exe dans le dossier DocumentApprovalWorkflow\bin\debug (ou le dossier DocumentApprovalWorkflow\bin pour la version VB de l'exemple), situé sous le dossier principal de l'exemple.
Voir aussi
Autres ressources
Copyright ©2007 par Microsoft Corporation. Tous droits réservés.