मैं एक ऐसी विधि को उत्सर्जित करना चाहता हूं जिसमें एक चर है, जो मैं कर सकता हूं। लेकिन, मैं उस वैरिएबल में एक MethodInfo ऑब्जेक्ट को स्टोर करना चाहता हूं, जो एक अलग (गैर उत्सर्जित) विधि का संदर्भ है।मैं प्री-लोडेड MethodInfo स्थानीय चर के साथ एक विधि कैसे उत्सर्जित करूं?
मैं ओपोड्स को कॉल टाइपफॉफ़ (someClass) को कॉल करने के लिए उत्सर्जित कर सकता हूं। GetMethod (...), लेकिन यह अधिक कुशल होगा अगर मैं इस विधिInfo के लिए केवल टोकन लोड कर सकता हूं और इसे सीधे चर में सेंक सकता हूं।
तो, रीफ्रेज करने के लिए, मैं इसे छोड़ने के लिए संभव से बाहर निकलने की कोशिश कर रहा हूं, आइए एक "लोड ऑब्जेक्ट" ऑपोड कहें और इसे एमिट-टाइम पर ऑब्जेक्ट पास करें जिसे रनटाइम पर स्टैक पर लोड किया जाएगा। (OpCodes.Ldobj ने कोशिश की जब मैंने कुछ प्रकार की त्रुटि दी)। या, क्या मुझे opcodes उत्सर्जित करने के लिए मजबूर किया गया है जो रनटाइम पर ऐसा करेगा?
मुझे लगता है कि यह संभव है। एरिक लिपर्ट ने एक बार सी # ऑपरेटर की संभावित जानकारी के बारे में ब्लॉग किया जो इसका उपयोग करेगा। – usr
क्या आप मेरे कारण/हमारे लिए समस्या को थोड़ा स्पष्ट बनाने के लिए पीछे कारण पर थोड़ा संदर्भ दे सकते हैं? –
@usr [जिस लेख के बारे में आप बात कर रहे हैं] (http://blogs.msdn.com/b/ericlippert/archive/2009/05/21/in-foof-we-trust-a-dialogue.aspx) है 'जानकारी' की वाक्य रचनात्मक समस्याओं के बारे में, यह कैसे लागू किया जा सकता है। – svick