2009-05-31 7 views
12

.NET स्टैक में विंडोज वर्कफ़्लो के लिए कौन से विकल्प हैं? और यदि आपने इन समाधानों का उपयोग किया है, तो आपने उन्हें विंडोज वर्कफ़्लो पर किस प्रकार चुना है और यह एक अच्छा विकल्प था।क्या कोई विंडोज वर्कफ़्लो के लिए .NET ओपन सोर्स विकल्प की सिफारिश कर सकता है?


अद्यतन:

मैं आगे चला गया और stateless निकोलस Blumhardt द्वारा बनाई गई चयन किया। डोमेन में मॉडलिंग मॉडलों के लिए यह एक बहुत ही सरल दृष्टिकोण है।

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); 

आप देख सकते हैं, राज्य मशीन जेनरिक का उपयोग करता राज्यों और उनके संबंधित चलाता मॉडल करने के लिए: नीचे गूगल पर उपलब्ध कराई नमूना कोड है। दूसरे शब्दों में, आप अपनी जरूरतों को पूरा करने के लिए enums, integers, string, आदि का उपयोग कर सकते हैं। राज्य मशीन के प्रत्येक राज्य को सशर्त ट्रिगर के साथ कॉन्फ़िगर किया जा सकता है जो विशिष्ट मानदंडों के आधार पर आग लगाएगा।

+0

क्यों? विंडोज वर्कफ़्लो फाउंडेशन के साथ क्या गलत है? – SLaks

+2

-1 कोई मानदंड नहीं दे रहा है! डब्ल्यूएफ। –

+2

असल में, मैं इस बात से सहमत हूं कि डब्ल्यूएफ में कुछ असफलताएं हैं, खासकर राज्य मशीनों के लिए। मुझे "! डब्ल्यूएफ", और किसी भी उत्तर के लिए अपने स्वयं के कारण देखने में दिलचस्पी होगी ... फिलहाल मैं इसके लिए एक महंगी उत्पाद का उपयोग कर रहा हूं ... और अपने स्वयं के वर्कफ़्लो इंजन को रोल करने पर विचार करना जो मेरी आवश्यकताओं के लिए बेहतर काम करता है (लंबी चल रही राज्यव्यापी व्यावसायिक प्रक्रियाओं के लिए, जहां प्रक्रिया व्यक्तिगत मामलों के जीवनकाल के दौरान ही बदलती है)। –

उत्तर

9

विंडोज कार्यप्रवाह फाउंडेशन एक overkill मेरे लिए कुछ स्थितियों में की तरह लगता है। फिर, अपने स्वयं के वर्कफ़्लो इंजन को कार्यान्वित करना आसान और आसान है।

नमूना संदर्भ:

+0

लिंक के लिए धन्यवाद - मैंने इस सप्ताह के अंत में डॉटनेट्रॉक्स पर निकोलस को सुनना समाप्त कर दिया। –

+0

आपका स्वागत है। पीएस: "निकोलस" –

संबंधित मुद्दे