views:

405

answers:

3

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)
+2  A: 

If you haven't looked at the Windows Workflow Foundation it's probably at least worth doing a bit of reading about it.

Jerry Coffin
I want a more light weight solution
Leyu
+1  A: 

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.

DodyG
+2  A: 

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.

Dave