चलो कहते हैं कि मैं इस तरह एक अंतरफलक है, चलो public void Log(Func<string> message, Logger.Type type)
जो भी मुझे पसंद है (सार्वजनिक संशोधक मेह की तरह ...) और वास्तविक लॉगिंग करने के लिए सभी एक्सटेंशन विधियों का उपयोग करें।का प्रयोग विस्तार के तरीकों में ही
अभी तक इतना अच्छा है ... या इतना अच्छा नहीं है? क्या इस दृष्टिकोण में कुछ गड़बड़ है? यदि नहीं, तो क्यों असुविधा: - लेकिन आवश्यकता स्पष्ट रूप से यह करने के लिए this
कैसे भाषा के चारों ओर विस्तार तरीकों से काम करता है की सिर्फ एक हिस्सा है
catch (Exception ex) {
this.Log(ex); // this works
Log(ex); // this goes not
आप 'लॉग (यह, पूर्व)' भी कॉल कर सकते हैं, जो इस स्थिति में पूरी तरह से अधिक पठनीय लगता है। –
@ हेनकहोल्टरमैन: ठीक है, आपको लॉगर.लॉग (यह, पूर्व) कॉल करना होगा ... –