2009-05-31 15 views
12

¿Qué alternativas hay para Windows Workflow en la pila .Net? Y si ha utilizado estas soluciones, ¿qué hizo que las seleccionara a través de Windows Workflow y fuera una buena opción?¿Alguien puede recomendar una alternativa .Net de código abierto para Windows Workflow?


Actualización:

seguí adelante y seleccionado stateless creado por Nicholas Blumhardt. Este es un enfoque muy simple para modelar estados en un dominio. A continuación se muestra el código de ejemplo proporcionado en Google:

var phoneCall = new StateMachine<State, Trigger>(State.OffHook); 

phoneCall.Configure(State.OffHook) 
    .Allow(Trigger.CallDialed, State.Ringing); 

phoneCall.Configure(State.Ringing) 
    .Allow(Trigger.HungUp, State.OffHook) 
    .Allow(Trigger.CallConnected, State.Connected); 

phoneCall.Configure(State.Connected) 
    .OnEntry(t => StartCallTimer()) 
    .OnExit(t => StopCallTimer()) 
    .Allow(Trigger.LeftMessage, State.OffHook) 
    .Allow(Trigger.HungUp, State.OffHook) 
    .Allow(Trigger.PlacedOnHold, State.OnHold); 

phoneCall.Configure(State.OnHold) 
    .SubstateOf(State.Connected) 
    .Allow(Trigger.TakenOffHold, State.Connected) 
    .Allow(Trigger.HungUp, State.OffHook) 
    .Allow(Trigger.PhoneHurledAgainstWall, State.PhoneDestroyed); 

Como se puede ver, la máquina de estados utiliza genéricos para modelar los estados y sus respectivos factores desencadenantes. En otras palabras, puede usar enumeraciones, enteros, cadenas, etc. para satisfacer sus necesidades. Cada estado de la máquina de estado puede configurarse con activadores condicionales que se dispararán según criterios específicos.

+0

¿Por qué? ¿Qué pasa con Windows Workflow Foundation? – SLaks

+2

-1 por no dar ningún criterio más allá! WF. –

+2

En realidad, me inclino a aceptar que WF tiene algunas fallas, especialmente para las máquinas de estado. Me interesaría ver tus propias razones para "! WF" y cualquier respuesta ... En este momento estoy usando un producto costoso para esto ... y estoy considerando desarrollar mi propio motor de flujo de trabajo que funcione mejor para mis necesidades (para procesos empresariales con estado de larga ejecución, donde el proceso mismo muta durante la vida de los casos individuales). –

Respuesta

9

Windows Workflow Foundation se siente como un overkill para mí en algunas situaciones. Entonces, es más fácil y simple implementar su propio motor de flujo de trabajo.

referencias de la muestra:

+0

Gracias por los enlaces. Acabo de escuchar a Nicolas en DotNetRocks este fin de semana. –

+0

De nada. PD: "Nicholas" –

Cuestiones relacionadas