मेरे पास एक क्लास है जो क्लाइंट एप्लिकेशन में और सर्वर एप्लिकेशन में उपयोग की जाती है। सर्वर अनुप्रयोग में, मैं क्लास ट्रफ एक्सटेंशन विधियों में कुछ कार्यक्षमता जोड़ता हूं। बहुत अच्छा काम करता है। अब मुझे थोड़ा और चाहिए:आभासी विस्तार के तरीके?
मेरी कक्षा (बी) किसी अन्य वर्ग (ए) से विरासत में है।
मैं ए के लिए वर्चुअल फ़ंक्शन संलग्न करना चाहता हूं (चलो निष्पादन()), और उसके बाद उस फ़ंक्शन को बी में लागू करें लेकिन केवल सर्वर में। Execute() विधि को उन चीजों को करने की आवश्यकता होगी जो केवल सर्वर पर करना संभव है, केवल उन सर्वरों का उपयोग करके जो सर्वर केवल जानता है।
बी के समान ए से प्राप्त होने वाले कई प्रकार हैं, और मैं उनमें से प्रत्येक के लिए Execute() को कार्यान्वित करना चाहता हूं।
मुझे उम्मीद थी कि मैं ए के लिए वर्चुअल एक्सटेंशन विधि जोड़ सकता हूं, लेकिन यह विचार उड़ने लगते नहीं हैं। मैं विस्तार की विधियों के साथ या बिना, इस समस्या को हल करने के सबसे शानदार तरीके की तलाश में हूं।
धन्यवाद मार्क। मैं इस तरह कुछ लागू करूंगा। यह मेरे लिए थोड़ा और मुश्किल है, क्योंकि मैं इन वर्गों को क्रमबद्ध करता हूं, और सर्वर से तार पर उन्हें क्लाइंट और वापस भेजता हूं। तो पारंपरिक डी थोड़ा मुश्किल हो सकता है, लेकिन मुझे लगता है कि मैं कक्षा बी के समतुल्य समकक्ष को लागू कर सकता हूं, (शायद बी से विरासत में), और जब क्लाइंट सर्वर को बी का उदाहरण भेजता है, तो मुझे इसे एक के साथ बदलना होगा सर्वरबी का नया उदाहरण। – Lucas
रजिस्ट्री दृष्टिकोण serialization के साथ ठीक काम करता है। मैं डब्ल्यूसीएफ ऑब्जेक्ट्स के साथ असेंबली साझा करने के लिए उस दृष्टिकोण का उपयोग करता हूं ... –