के साथ डब्ल्यूसीएफ सेवा में काम की इकाई को कार्यान्वित करना मैं ऑटोफैक के साथ डब्ल्यूसीएफ सेवा में कार्य पैटर्न की इकाई को कैसे कार्यान्वित कर सकता हूं?ऑटोफैक
मेरी सेवाओं और भंडारों में कार्य इंटरफ़ेस की इकाई के प्रति यूनिट (या ऑटोफैक शब्द लाइफटाइमस्कोप में) को इंजेक्शन करना ऑटोफैक के डब्ल्यूसीएफ एकीकरण का उपयोग करना आसान है - जो मैं कर रहा हूं वह काम के बदलावों की इकाई को प्रतिबद्ध करने का एक तरीका है डब्ल्यूसीएफ सेवा कॉल की वापसी स्पष्ट रूप से केवल तभी होती है जब कोई अपवाद नहीं होता है।
मैंने Using a Custom Endpoint Behavior with WCF and Autofac देखा है जो मूल रूप से मैंने कैसे शुरू किया है लेकिन यह अपवादों से निपटता नहीं है।
वर्तमान में मेरे पास IOperationInvoker
है जो Invoke में काम की इकाई शुरू करता है और केवल तभी होता है जब कोई अपवाद नहीं होता है। इस दृष्टिकोण के साथ समस्या यह है कि मुझे Invoke
विधि के अंदर कार्य उदाहरण की मेरी इकाई को हल करने की आवश्यकता है जो मुझे AutofacInstanceProvider
का उपयोग करके मेरी सेवाओं और भंडारों में इंजेक्शन से अलग एक अलग उदाहरण देता है।
मान लीजिए कि हमने कंटेनर में 'IUnitOfWork' पंजीकृत किया है। हम इसके साथ एक सेवा कॉल कैसे लपेट सकते हैं और यदि कोई अपवाद नहीं हुआ है तो केवल 'SaveChanges()' को कॉल करें? या क्या हमें सेवा कन्स्ट्रक्टर में यूओडब्ल्यू लेना है? – jgauffin
जब आप सेवा कॉल कहते हैं, तो क्या आपका मतलब डब्ल्यूसीएफ सेवा कॉल है? यदि हां, तो ऊपर दिए गए लिंक से पता चलता है कि आप यह कैसे कर सकते हैं। ऑटोफैक का उपयोग करते समय कोई अपवाद नहीं होने पर मुझे केवल एक ही समस्या है कि मुझे केवल यूओडब्लू को बचाने का कोई तरीका नहीं मिला है। –
आपने यह स्वयं कहा है =) 'मैं जो भी कर रहा हूं वह डब्ल्यूसीएफ सेवा कॉल की वापसी पर कार्य परिवर्तन की इकाई को प्रतिबद्ध करने का एक तरीका है, जाहिर है कि अगर कोई अपवाद नहीं है।' यह कठिन हिस्सा है और मैं क्या देख रहा हूं। – jgauffin