c# - Base classing a synchronous controller into an async controller to hide complexity -
वर्ग MyBaseController: AsyncController {// ...} वर्ग SimpleController: MyBaseController {सार्वजनिक ActionResult MySyncAction () {} } मैं हमेशा को एक काम करना है, OperationX () । यह सभी मेरे अनुरोधों के लिए एक लंबे समय से चलने वाला अभियान है यह कई चीजों पर आधारित मूल्यों को अलग करता है, लेकिन यह एक तकनीकी विवरण है। मैं एक एएसआईएनसी फैशन में ऐसा करना चाहता हूं, और फिर नियमित तरीके से नियंत्रक की क्रिया विधि को बुलाता हूं। हमारे पास सरल कंट्रोलर दुनिया में कोड का एक टन है, और हमारे पास सैकड़ों नियंत्रक और रूट आदि हैं, इसलिए यह सभी कोड को एएससीएन में कनवर्ट नहीं करना है।
क्सीसिटन, इसलिए यह है कि मैं माइबस कंट्रोलर के मायसेंकएक्शन में आ रही किसी कार्रवाई को रोकता हूं और फिर MyBaseController के एसिंक क्रिया हमेशा को दबाता हूं, और उसके बाद केवल बेसकंट्रोलर में एसिंक कार्रवाई के पूरा होने पर, तब मैं सिंपलर कंट्रोलर के MySyncAction को कॉल करता हूं। क्या यह संभव है, सबसे अच्छा तरीका क्या है?
यदि आप केवल SimpleController के MySyncAction कॉल करना चाहते हैं BaseController के बाद, फिर इसके बजाय एक FilterAttribute का उपयोग किया जा सकता है?
यहां एक कस्टम फ़िल्टर विशेषता का एक उदाहरण है जो कुछ लॉगिंग करता है ...
[ MyFilterAttribute] वर्ग SimpleController: AsyncController {सार्वजनिक कार्यप्रतिकृति MySyncAction () {}}
Comments
Post a Comment