équipe:Invoke, flux de travail des enfants de manière asynchrone
je dois appeler une activité WF (XAML) d'un service WF (XAMLX) de manière asynchrone. Je référence déjà le framework Microsoft.Activities.Extensions et je cours sur Platform Update 1 pour la machine à états - donc si la solution est déjà dans l'une de ces bibliothèques, je suis prêt!
Maintenant, j'ai besoin d'appeler cette activité (XAML) de manière asynchrone - mais il a un paramètre de sortie qui doit définir une variable dans le service (XAMLX). Quelqu'un peut-il me fournir une solution?
Merci!
* MISE À JOUR *
Maintenant, je peux envoyer des photos, * * Je pense, parce que j'ai réputation assez! Laissez-moi en mettre quelques-uns ici et essayer de mieux expliquer mon problème. La première image est le service WF qui a les deux points d'entrée pour le flux de travail - le second est le flux de travail lui-même. Ce workflow est un mécanisme d'orchestration qui redémarre en permanence et dispose de mécanismes de basculement (par exemple, exit sur seuil d'erreur et sortie logicielle) pour gérer notre file d'attente de transactions durables en utilisant WF! Maintenant, ce workflow fonctionnait parfaitement quand il s'agissait d'un seul service WF, car nous pouvions appeler le service, obtenir une réponse et renvoyer la valeur de cette réponse dans un autre point d'entrée dans un déclencheur pour émettre une sortie en douceur. . Cependant, une nouvelle exigence nous a demandé de faire du workflow lui-même une activité WF dans un autre projet et d'avoir les séquences Receive/Send-Reply dans le projet d'application de service WF. Cependant, nous devons être en mesure de démarrer ce flux de travail et de l'oublier, puis de le faire savoir qu'une sortie douce est nécessaire plus tard, mais comme WF s'exécute sur un seul thread, cela devient un peu difficile au mieux.
Nous avons une exigence qui nous oblige à placer tous nos messages (Receive/Send-Reply) dans un projet, puis le flux réel pour ces messages dans les activités XAML dans un autre projet. Donc, ce que je dois faire est de générer cette activité XAML entre les activités Receive/Send-Reply, lui permettre de définir son paramètre de sortie qui est un objet état (me permet de communiquer avec lui plus tard) et retourner à l'expéditeur. –
Ne pense pas que ce sera possible. Si vous utilisez un parallèle, votre activité xaml peut utiliser un argument InOut et le paramétrer affecte la variable liée dans le flux de travail parent, mais vous n'avez aucun moyen de reprendre le contrôle du flux de travail. Même si votre branach parallèle était dans une boucle, vous seriez inutilement en train de tourner pour attendre que la variable soit réglée. Pouvez-vous graver l'objet état/corrélation du workflow? –
OK - alors laissez-moi poser cette question. Serait-il possible d'exposer un service Web pour lancer l'autre flux de travail, mais placez cette instance sur le même hôte que le service WF qui a démarré le processus? –