Question

Je suis tombé sur sans état , un framework de machine à états hiérarchique basé sur Simple State Machine pour Boo , mais configuré avec C # 3.0

Il est facile à configurer et à utiliser, je l’utiliserai bientôt.

Mais je me demandais si

  • Quiconque a utilisé un état sans statut pour de vrais projets (dans l'affirmative, quelle est votre opinion?)
  • Existe-t-il d'autres moteurs de workflow efficaces pour .NET? (autre que WF)
Était-ce utile?

La solution

J'utilise Stateless et WF pour une application destinée à entrer en production un jour. :) J'ai détaillé mes expériences à ce jour sur mon post ici .

Dans l’ensemble, je préfère Stateless car c’est plus simple pour plus de choses que WF. Bien sûr, il est agréable de pouvoir concevoir votre flux de travail graphiquement, mais lorsque vous devez implémenter quelque chose de plus difficile qu'un flux de travail séquentiel (comme le flux de travail de la machine à états), vous devez utiliser ExternalDataExchange uniquement pour effectuer les transitions d'état appropriées. Ce n'est probablement pas difficile, mais prendre cela en compte et le fait que vous deviez mettre en œuvre un service de persistance pour mettre en pause un flux de travail me paraissaient peu attrayant. De toute façon, je n'ai pas besoin de conserver un flux de travail sur le disque pour une exécution ultérieure ... je vais donc utiliser des événements réguliers pour gérer cela dans Stateless. La gestion des erreurs est facilement faisable dans Stateless (j'ai eu du succès avec elle), mais la mise en œuvre que j'ai prise est discutable, et fait l'objet d'une autre discussion (que je recherche maintenant sur SO!). Je vais peut-être poster une question à ce sujet très bientôt.

Bonne chance avec Apatride. J'espère entendre vos progrès.

Autres conseils

Pour Workflow Foundation, utilisez-le uniquement pour un projet vert afin de pouvoir utiliser WF4. Regarde ça

WF 1.0 et 1.5 ne sont pas compatibles avec WF4. Donc, ce n'est pas une solution avancée.

J'utilise personnellement http://simplestatemachine.codeplex.com une alternative au format WF. Je l'ai utilisé dans un système de production complet (basé sur asp.net) pour gérer un système très complexe de délivrance de licences commerciales (gérant plus de 350 licences commerciales différentes).

Je n'ai pas encore essayé d'apatridie, mais cela semble prometteur.

En retard à la fête. Nous utilisons Stateless dans la production depuis plus d'un an et demi, pas de problème. C'est une solution très élégante pour le traitement des flux de travail et vous intégrez rapidement les états à votre modèle de données. Nous représentons nos états avec et int en SQL afin que vous puissiez exécuter la machine à états dans ASP.Net en cours. Ceci est également vrai pour les workflows longs.

Si vos exigences sont élémentaires, une machine StateMachine très simple que j’ai écrite pourrait être intéressante.

Veuillez noter que, au moment de la rédaction de ce document, il ne prend pas en charge les états hiérarchiques.

Vous pouvez le trouver sur NuGet:

nuget install nstate

ou consultez-le sur GitHub:

https://github.com/benaston/NState

J'espère que quelqu'un le trouvera utile.

Si vous n'avez pas consulté la Windows Workflow Foundation il vaut probablement au moins la peine de lire un peu à ce sujet.

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