2009-07-22 11 views
5

क्या कोई लाइब्रेरी है (जैसे ओपन सोर्स प्रोजेक्ट इत्यादि) जो जटिल प्रतिबिंब का उपयोग करना आसान बनाता है जैसे फ्लाई पर वस्तुओं या कक्षाएं बनाना, उदाहरणों का निरीक्षण करना आदि?सी # आसान गतिशील प्रतिबिंब के लिए लाइब्रेरी

धन्यवाद

+0

आपका मतलब है, सिस्टम के प्रकारों के अलावा। रिफ्लेक्शन नेमस्पेस? –

+0

हां, सबसे कठिन प्रतिबिंब कार्यों को करने के कार्य को कम करने के लिए उनके चारों ओर एक रैपर की तरह कुछ – pistacchio

+0

क्या आप इनमें से कुछ 'हार्ड प्रतिबिंब कार्यों' का वर्णन कर सकते हैं? – Trap

उत्तर

4

वहाँ एक उपलब्ध LinFu पुस्तकालय जो प्रतिबिंब से बहुत कुछ अन्य रोचक सामान कर सकते हैं ... कोशिश है यह

0

एमएस इकाई परीक्षण विधानसभा है PrivateObject और PrivateType जो निजी उदाहरण/प्रकार के लिए उपयोग करना सदस्यों को बहुत सीधे आगे।

+0

हालांकि, इस बाहरी परीक्षण का उपयोग करना एक भयानक, भयानक विचार है ... –

+0

यह प्रतिबिंब के माध्यम से आप क्या कर सकते हैं इसके लिए यह केवल एक रैपर है, इसलिए यह वास्तव में कुछ खास नहीं है, लेकिन मैं मानता हूं कि आपको निजी सामानों के साथ गड़बड़ नहीं करना चाहिए/प्रकार के। –

2

मेरी राय में मुझे नहीं लगता कि प्रतिबिंब अब से कहीं अधिक आसान हो सकता है। लगभग सभी कोर कार्यक्षमता टाइप क्लास के भीतर लपेटी जाती है। यह कैसे काम करता है इसके बारे में जानने के लिए बस अपना समय लें और आपको इसके ऊपर एक और अनावश्यक परत की आवश्यकता नहीं होगी।

विशेष रूप से, अगर आप इस तरह unitialized वस्तुओं बनाने के रूप में 'जटिल चीजों को' कर सकते हैं:

// Instantiates an uninitialized object of the specified type. 
var newObject = (MyObject)FormatterServices.GetUninitializedObject(elementType); 
+0

ठीक है, कुछ कैशिंग (प्रतिबिंब द्वारा प्राप्त जानकारी का) अच्छा होगा। प्रतिबिंब बहुत धीमा है और उसी विधि को पुनर्प्राप्त करना 'MethodInfo' या 'FieldInfo की बार-बार संसाधन संसाधन है। (मुझे पता है कि आपका जवाब बहुत पुराना है ...) –

1

प्रतिबिंब परिभाषा कठिन है। यह पूरे ऑब्जेक्ट संरचना पर लगाए गए संकेत का स्तर है। मुझे सच में यकीन नहीं है कि आप अपनी शक्ति को सीमित किए बिना इसे कैसे आसान बना सकते हैं।

1

यदि प्रतिबिंब कठिन है, तो यह संभव हो सकता है कि आपको .NET की मूल बातें पूरी तरह से समझ न हो। आप this जैसे ट्यूटोरियल को आजमा सकते हैं।

संबंधित मुद्दे