Question

WorkflowRuntime workflowRuntime = new WorkflowRuntime();

 ExternalDataExchangeService dataExchangeService;
 dataExchangeService = new ExternalDataExchangeService();
 workflowRuntime.AddService(dataExchangeService);

 PaymentProcessingService paymentProcessing;
 paymentProcessing = new PaymentProcessingService();
 dataExchangeService.AddService(paymentProcessing);

Avec le code ci-dessus, notre application peut utiliser paymentProcessing.RaiseXXXXEvent pour interactive avec l'instance de workflow. Ma question est: Quel est le principe de mettre en œuvre le mécanisme d'un tel. Je pense que cela est une sorte de Modèle Event Driven , mais comment puis-je mettre en œuvre ce mécanisme et pourquoi? S'il vous plaît me indiquer la direction ou les références sont appréciées.

Par ailleurs, il est le mécanisme jBPM? Est-ce que jBPM inclut flux de travail de séquence et flux de travail de la machine d'état comme base de flux de travail de la fenêtre?

Merci!

Était-ce utile?

La solution

WF définit un ensemble de services de flux de travail de base que l'ordonnancement des threads de poignée, workflow la persistance, les transactions et le suivi des flux de travail. Les concepteurs de WF auraient pu intégré la mise en œuvre de ces services dans le moteur d'exécution lui-même, mais ils ont choisi à bon escient pour extérioriser eux, plaçant leurs mises en œuvre dans Services connectables. Cela place vous dans le contrôle . Tu décides services à utiliser (certains sont en option) et l'implémentation à utiliser pour chaque service.

WF prend également en charge un autre type de service connu sous le nom d'un service local (parfois appelé données service d'échange). Ceci est un service que vous concevez et vous mettre en œuvre. Un service local peut servir à peu près tout but, mais un usage général est de faciliter les communications entre les instances de workflow et l'application hôte. Contrairement à cela, les services de flux de travail de base ont chacun un but (par exemple, persistance, suivi) qui a été défini par Microsoft. Vous pouvez développer des implémentations alternatives pour chaque service de base, mais cela ne change pas leur but défini.

Pour que votre service local disponible à votre instance de workflow. Il existe plusieurs méthodes pour ce faire. Le plus simple serait d'utiliser le CallExternalMethodActivity et le configurer.

De plus, le service doit avoir une interface et décorée avec [ExternalDataExchange].

Si vous êtes à la recherche à la rédaction de votre propre mise en œuvre d'un service de base, voici un lien qui décrivent comment fournir propre service de workflow de base .

http://msdn.microsoft. com / fr-fr / bibliothèque / ms734705 (v = VS.90) .aspx

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top