L’objectif de ce tutoriel est de découvrir les activités primitives de WF.
Etape 1 – Création de la solution et du workflow
L’objectif de cette étape est de créer une application console « Workflow » puis de créer un workflow qui contient des activités primitives.
- Lancer VS 2012
- Cliquez sur « Fichier à Nouveau à Projet »
- Choisissez le template « Application Console Workflow »
- Appelez la solution « PrimitiveWorkflow »
- Remarquez que VS ouvre directement « Workflow1 » dans le designer
- Renommez le workflow en « PrimitiveActivity »
- Corrigez « Program.cs » pour qu’il pointe sur le nouveau nom
- Ouvrez le workflow en mode designer
- Faites glisser un « FlowChart » sur le workflow
- Sélectionnez le flowchart puis cliquez sur « Variables »
- Ajoutez une variable appelée « X » de type « String » et donne la valeur est « formation wf » en minuscules (avec les guillemets)
- Fermez la zone des variables en recliquant sur « variables »
- Faites glisser une activité « WriteLine » juste après l’activité « Start ». En mettant le curseur de la souris sur l’activité « Start », des bords bleus apparaissent. Faites glisser un bord de « Start » à « WriteLine » pour lier les deux activités.
- Cliquez avec le bouton droit sur l’activité « WriteLine »
- Cliquez sur « Ajouter une annotation »
- Dans l’annotation écrivez « affichage de la première valeur »
- Les annotations sont une nouvelle fonctionnalité de WF permettant d’annoter les activités pour les rendre plus lisibles et faciles à maintenir.
- Dans la zone « Text » de l’activité « WriteLine » entrez « X.ToString() + " " + DateTime.Now.ToString()
- Remarquez l’utilisation des expressions C# et de l’intellisense Visual Studio
- Faites glisser en dessous de « WriteLine » une activité « Delay » de façon à ce que le bord inférieur de la « WriteLine » apparaisse. Remarquez que le designer lie automatiquement les deux activités.
- Dans la fenêtre de propriétés relative au « Delay », dans la propriété « Duration », entrez « TimeSpan.FromSeconds(3) ». ça permettra de poser le workflow pendant 3 secondes.
Etape 2 : Intégration avec des objets C#
L’objectif de cette étape est de permettre à notre workflow d’invoquer une méthode d’une classe C#
- Ajoutez une classe publique à la solution appelée « Appels »
- Ajoutez une méthode statique à cette classe appelée « MajPuisAfficher » comme suit :
public static void MajPuisAfficher(string p)
{
p = p.ToUpper();
Console.WriteLine(p);
}
- Dans le workflow glissez une activité « InvokeMethod »
- Dans la zone « TargetType », sélectionnez « Chercher des types »
- Cherchez le type « Appel »
- Si le type n’apparaît pas, recompilez la solution
- Cliquez sur « OK »
- Dans la zone « MethodName », entrez « MajPuisAfficher »
- Dans la fenêtre des propriétés, cliquez sur la propriété « Parameters »
- Indiquez un paramètre en entrée représenté par « X »
- Cliquez sur OK
- Ouvrez « Program.cs » puis ajoutez une lecture d’une touche à la fin
Activity workflow1 = new PrimitiveActivity();
WorkflowInvoker.Invoke(workflow1);
Console.ReadKey();
Pour télécharge le code, cliquez sur le lien suivant : http://1drv.ms/1ogIWp0
Enjoy !