IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Windows Workflow Foundation .NET Discussion :

[WF] Problème modification propriété


Sujet :

Windows Workflow Foundation .NET

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2007
    Messages : 9
    Points : 8
    Points
    8
    Par défaut [WF] Problème modification propriété
    Bonjour à toutes et à tous,

    Je suis actuellement en stage dans une entreprise ou ma tache est de faire un portage du Workflow de l'entreprise développé à l'aide du Framework .NET 1.1 vers le Workflow de Microsoft, ( Windows Workflow Foundation ) introduit lors de la sortie du Framework 3.0

    Après une période d'apprentissage, j'ai commencé à faire des versions de test pour montrer quels sont les avantages du nouveau Workflow de Microsoft.

    J'ai donc un Workflow de type State Machine, composé de 4 états (Initialisation, Encodage, Validation, Fin ) que devra tranverser une fiche ( une bête classe contenant un int, et 2 string ).

    Le soucis étant que lorsque j'encode ma fiche à l'état d'encodage, puis que je passe à l'état de Validation, toutes les modifications apportées lors de l'état précédent n'ont pas été sauvegardées.

    Comment cela se fait il ?


    Voici quelques screens et des explications pour vous resituer :

    look global
    initialisation encodageEmploye
    classes chargement

    J'ai donc un workflow1.cs dans lequel j'ai un objet de type "Fiche".
    Cet objet est initialisé lors de l'initialisation de l'état "Initialisation" ( Fiche laFiche = new Fiche(); )

    Lorsque j'arrive à l'état encodageEmploye, j'appele une méthode externe (callExternalMethod). Cette méthode est définie dans l'interface IGUI ( void ChargementEmploye(Fiche F)), pour la fiche en paramètre, je lui passe bien entendu mon objet Fiche lié au Workflow.

    Ma méthode ChargementEmploye crée un userControl dont vous avez le constructeur.
    C'est dans ce userControl que la fiche est modifiée.

    Et donc, une fois que l'on passe à l'état de Validation, les modifications apportées à la fiche n'apparaissent plus.

    Comment ceci est il possible, vu que la fiche a toujours bien été passée en paramètre ?


    En espérant que parmis vous se trouvent des utilisateurs assidus du WF de Microsoft.



    Pierre Martin.
    Student in Computer Sciences,
    Level-IT.
    www.level-it.be

  2. #2
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2007
    Messages
    9
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Mai 2007
    Messages : 9
    Points : 8
    Points
    8
    Par défaut
    Je me permet de relancer un peu le sujet...

    J'ai remarqué que dans la majorité des exemples disponibles sur le net, ce genre de problème était résolu de la manière suivante :

    On crée une classe qui dérive d'ExternalDataEventArgs, et qui comporte notre objet.

    Du coup, on balade notre objet à modifier à travers le workflow à l'aide des évenements.

    Problème :

    C'est que je ne trouve pas ça très "beau".

    Si on a un workflow qui tourne entièrement autour d'un objet (dans mon cas une fiche), il me semble plus logique que le workflow aie comme propriété une instance de cet objet, et que se soit cette dernière qui soit passée aux différentes Activity qui composent notre workflow...


  3. #3
    Membre à l'essai
    Inscrit en
    Mars 2008
    Messages
    17
    Détails du profil
    Informations forums :
    Inscription : Mars 2008
    Messages : 17
    Points : 19
    Points
    19
    Par défaut
    Salut Pierre,

    En fait, si tu passes une instance d'un objet au workflow et que le workflow modifie l'objet, tu dois renvoyer l'objet a l'host pour voir les modifications se répercuter. L'explication est simple : les data exchange services sérialisent les objets.

Discussions similaires

  1. [VB6] probléme avec propriété ActiveX
    Par Lucas42 dans le forum VB 6 et antérieur
    Réponses: 2
    Dernier message: 14/06/2006, 16h51
  2. Problème : modification d'un paramètre sous IE
    Par insane_fr dans le forum XML/XSL et SOAP
    Réponses: 9
    Dernier message: 27/05/2006, 16h49
  3. [Access 2003]Problème de Propriété Bouton
    Par steeves5 dans le forum Access
    Réponses: 5
    Dernier message: 23/05/2006, 21h01
  4. Réponses: 6
    Dernier message: 15/02/2006, 14h02
  5. Réponses: 4
    Dernier message: 06/10/2005, 16h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo