में दो फ़ाइलों में एक विधि को विभाजित करना क्या सी # में दो फाइलों में एक विधि को विभाजित करना संभव है? मुझे पता है कि आंशिक तरीके हैं, लेकिन वे ऐसा नहीं कर सकते हैं।सी #
यहां परिदृश्य है। मैं एक ओपन-सोर्स लाइब्रेरी का उपयोग कर रहा हूं और एक या अधिक फ़ाइलों में कुछ अनुकूलन जोड़ने की जरूरत है। उदाहरण के लिए, मैं कक्षा Employee
कक्षा में दो नए फ़ील्ड जोड़ना चाहता हूं और फिर उन्हें उस श्रेणी के InitializeFields()
विधि में प्रारंभ करना चाहता हूं। चूंकि ओपन-सोर्स प्रोजेक्ट विकसित हो रहा है और अब हर बार नए संस्करण जारी किए जाते हैं, इसलिए मैं पुस्तकालय के नए संस्करणों को आसानी से अपग्रेड करने के लिए, मेरी प्रोजेक्ट को मूल प्रोजेक्ट से अलग रखना चाहता हूं।
मैं पहले से ही partial class
सिंटैक्स का उपयोग Orig.cs
और Custom.cs
में सभी आवश्यक वर्गों विभाजित किया है, और Custom.cs
में मेरे कस्टम फ़ील्ड जोड़ लिया है। अब समस्या यह है कि मेरे पास InitializeFields()
विधि को विभाजित करने का कोई तरीका नहीं है, ताकि मेरा कस्टम कोड Custom.cs
फ़ाइल में जा सके।
कृपया ध्यान दें कि मैं समस्या का समाधान करने के लिए विरासत का उपयोग नहीं कर सकता। ओपन-सोर्स लाइब्रेरी में कर्मचारी वर्ग के कई संदर्भ होंगे और मैं उन सभी को बदलने का जोखिम नहीं उठा सकता।
आम तौर पर, यह मौजूदा कोड को विस्तारित करने का एक सतत तरीका नहीं है। क्या आपने 'कर्मचारी' वर्ग से उत्तराधिकारी माना है और अपने खेतों को जोड़ दिया है? इस तरह आप 'अपने प्रारंभिक फ़ील्ड() 'को ओवरराइड कर सकते हैं, अपने क्षेत्र में प्रवेश कर सकते हैं, फिर' बेस। प्रारंभ करें फ़ील्ड()' पर कॉल करें। –
मुझे खेद है कि आप विरासत का उपयोग क्यों नहीं कर सकते? बदलने के लिए बहुत कुछ है? यह हल करता है और इसे हल करता है? –
_ में कर्मचारी वर्ग के कई संदर्भ हो सकते हैं और मैं उन सभी को बदलने का जोखिम नहीं उठा सकता हूं- __Refactor, Rename__ –