Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

.NET Workflow Engine Suggestions [closed]

Tags:

I came across stateless, a hierarchical state machine framework based on Simple State Machine for Boo, but configured using C# 3.0

It is easy to configure and use, I will probably use it soon.

But I was just wondering if

  • Anyone used stateless for real projects (If so what is your opinion?)
  • Are there any other good workflow engines for .NET? (other than WF)
like image 863
Leyu Avatar asked Oct 27 '09 14:10

Leyu


4 Answers

I've been using Stateless and WF for an app that is intended to go into production someday. :) I have detailed my experiences so far on my post here.

Overall, I prefer Stateless because it's simpler for more things that WF. Sure, it's nice to be able to design your workflow graphically, but when you need to implement something more difficult than a sequential workflow (like the state machine workflow), you'll need to work with ExternalDataExchange just to make the right state transitions. It's probably not hard, but considering that and the fact that you need to implement a persistence service to pause a workflow just seemed unappealing to me. I don't have a need to persist a workflow to disk for later execution anyway... so I will be using regular events to deal with this in Stateless. Error handling is easily doable in Stateless (I've been successful with it), but the implementation I've taken is questionable, and is the topic of another discussion (which I'm searching for now on SO!). I might be posting a question regarding this very soon.

Good luck with Stateless. I hope to hear how you've been progressing with it.

like image 57
Dave Avatar answered Oct 15 '22 22:10

Dave


For Workflow Foundation, only use it for green project so you can use WF4. Check this out http://realworldsa.dotnetdevelopersjournal.com/goodbyewindowsworkflowfoundationseeyouin2011.htm

WF 1.0 and 1.5 are not compatible with WF4. So it's not a forward solution.

I personally use http://simplestatemachine.codeplex.com as an alternative to WF. I have used it in one full production system (asp.net based) to handle a pretty complex business license issuance system (handling 350+ different government business licenses).

I haven't tried stateless yet but it looks promising.

like image 28
DodyG Avatar answered Oct 15 '22 23:10

DodyG


Late to the party. We've used Stateless in production now for over a year and a half, no issues. It is a very elegant solution for processing workflows and you quickly integrate the states with your data model. We represent our states with and int in SQL, so you can run the state machine in ASP.Net in process. This is true for long running workflows as well.

like image 20
David Robbins Avatar answered Oct 15 '22 22:10

David Robbins


If your requirements are basic, a very simple StateMachine I wrote may be of interest.

Please be warned that it does not (at the time of writing) support hierarchical states.

You can find it on NuGet:

nuget install nstate

or check it out on GitHub:

https://github.com/benaston/NState

I hope someone finds it useful.

like image 33
Ben Aston Avatar answered Oct 15 '22 22:10

Ben Aston