या तो उपयोग करने के लिए प्रभाव और सुझाए गए परिदृश्य क्या हैं?असेंबली का उपयोग कर रहा है। एक स्थिर संदर्भ या गतिशील संदर्भ लोड करें?
उत्तर
Assembly.Load
एक गतिशील संदर्भ है क्योंकि आप रन-टाइम पर बाहरी डीएलएल गतिशील रूप से लोड कर रहे हैं। आप एक स्थिर संदर्भ पर विचार करेंगे जैसे कि जब आप किसी .NET प्रोजेक्ट का संदर्भ जोड़ रहे हों और उस संदर्भ के साथ प्रोजेक्ट का निर्माण कर रहे हों।
संपादित करें:
MSDN डॉक्टर से:
संकलक रिकॉर्ड स्थिर निर्माण समय में विधानसभा प्रकट के मेटाडेटा में संदर्भ ।
हमम, इस बारे में निश्चित नहीं है। मैं अब और अधिक सुधार टिप्पणियां प्राप्त करने या बेहतर उत्तरों को देखने की उम्मीद में, मेरा उत्तर यहां रखूंगा।
एमएसडीएन (http://msdn.microsoft.com/en-us/library/yx7xezcf(VS.71).aspx) में वर्णित एक डायनैमिक संदर्भ संदर्भों को लोड करने के लिए रनटाइम को केवल पर्याप्त जानकारी के साथ संदर्भ लोड करने के संदर्भ में गतिशील संदर्भ संदर्भ देता है। स्थिर संदर्भों के साथ, असेंबली का स्थान (जीएसी, आवेदन सख्त, आदि) ज्ञात हैं और अभी भी Assembly.लोड का उपयोग करके पूरा किया जा सकता है।
के संदर्भ में:
क्या निहितार्थ हैं और सुझाव परिदृश्यों या तो उपयोग करने के लिए?
आमतौर पर, यदि मैं Assembly.Load()
का उपयोग करता हूं, तो ऐसा इसलिए है क्योंकि मैं एक प्लगिंग सिस्टम विकसित कर रहा हूं। गतिशील संदर्भ उन असेंबली को शामिल करने में सुविधा प्रदान करते हैं जो मेरे निर्माण का जरूरी हिस्सा नहीं हैं।
गतिशील रूप से लोड असेंबली से इंस्टेंटियेटिंग प्रकारों को कम से कम कुछ प्रतिबिंब की आवश्यकता होती है। आवश्यक प्रतिबिंब की मात्रा को यह सुनिश्चित करके कम किया जा सकता है कि गतिशील रूप से लोड किए गए प्रकार कुछ ज्ञात इंटरफ़ेस या बेस क्लास (एक स्थिर रूप से लोड असेंबली से) को लागू करते हैं।
संक्षेप में, गतिशील रूप से लोड असेंबली का उपयोग करने के लिए यह बहुत काम है; हालांकि, ऐसा करने से उपयोगकर्ताओं को प्लग-इन विकसित करने की अनुमति देकर अधिक लचीला बना दिया जा सकता है। गतिशील संदर्भों की अनुमानित लचीलापन (जो एक आवश्यकता नहीं हो सकती है) की अनुमानित लचीलापन का व्यापार-बंद करें, और स्थिर संदर्भों के लिए विजुअल स्टूडियो से डिज़ाइन-टाइम समर्थन।
एक प्लग-इन आर्किटेक्चर बनाने पर विचार करने योग्य अभ्यास अपने स्वयं के ऐपडोमेन्स में असेंबली लोड करना है। ऐसा करने से आप असेंबली की सुरक्षा अनुमतियों पर बेहतर नियंत्रण प्राप्त कर सकते हैं, जिन पर आप पूरी तरह भरोसा नहीं कर सकते हैं, और अतिरिक्त लाभ प्रदान करते हैं कि असेंबली रन-टाइम पर अनलोड किए जा सकते हैं। निजी तौर पर, मैंने श्रम-केंद्रित होने के लिए ऐपडोमेन्स के साथ काम करना पाया; हालांकि, यदि लाभ की आवश्यकता है, तो यह जानना अच्छा है कि AppDomains वहां हैं।
- 1. संदर्भ संपत्ति या लोड()
- 2. असेंबली का उपयोग किए बिना असेंबली कैसे लोड करें। लोड?
- 3. x86 असेंबली संदर्भ पत्र
- 4. संदर्भ संदर्भ संवाद में गायब जीएसी असेंबली
- 5. एक सिंगलटन बनाम एक स्थिर संदर्भ
- 6. एंड्रॉइड, R.drawable में संदर्भ चीजें। चर का उपयोग कर?
- 7. फ़ाइल या असेंबली लोड नहीं कर सका
- 8. एक struct का उपयोग संदर्भ
- 9. असेंबली में सारांश नहीं दिख रहा है यदि इसे संदर्भ
- 10. संदर्भ 3.5 असेंबली?
- 11. एक स्थिर संदर्भ में जेनेरिक प्रकारों का उपयोग
- 12. जावा "स्वयं" (स्थिर) संदर्भ
- 13. माइक्रोसॉफ्ट ऑफिस इंटरऑप असेंबली संदर्भ
- 14. प्रिज्म असेंबली संदर्भ विफलता: System.Windows.Interactivity
- 15. गतिशील रूप से स्थिर पुस्तकालय लोड हो रहा है?
- 16. एक स्थिर संदर्भ से getclass()। GetResource() कैसे प्राप्त करें?
- 17. ओपनजीएल संदर्भ स्विच करें या संदर्भ के बजाय संदर्भ प्रस्तुत करें स्विच करें, क्या बेहतर है?
- 18. प्रतिबिंब का उपयोग कर एक हस्ताक्षरित असेंबली से एक हस्ताक्षरित असेंबली में प्रकार लोड करना क्यों संभव है?
- 19. स्थिरता फ्रेमवर्क संदर्भ स्थिर
- 20. वीबी 6 में .NET असेंबली का संदर्भ
- 21. Android संदर्भ में एक स्थिर विधि में एप्लिकेशन संदर्भ प्राप्त करने का सबसे अच्छा तरीका
- 22. WPF संसाधन लोड हो रहा है LoadFrom लोड हो रहा है के संदर्भ में विफल रहता है
- 23. बेहतर अभ्यास: getElementByID का उपयोग करके या एक संदर्भ भंडारण?
- 24. असेंबली बाइंडिंग पुरानी संदर्भ अपवाद
- 25. Regex.Replace और स्थिर संदर्भ?
- 26. अपरिभाषित संदर्भ जब गतिशील cygwin
- 27. एक ही असेंबली में परिपत्र संदर्भ एक बुरी बात है?
- 28. एक ही असेंबली के विभिन्न संस्करणों का संदर्भ
- 29. विचारों में स्क्रिप्ट पुस्तकालयों का संदर्भ दे रहा है और _Layout.cshtml अनावश्यक उपयोग कर रहा है?
- 30. का उपयोग संदर्भ MYSQL
यह पूरी तरह से सही नहीं है मेरा मानना है कि ... एमएसडीएन में वर्णित एक डायनैमिक संदर्भ (http://msdn.microsoft.com/en-us/library/yx7xezcf (VS.71) .aspx) संदर्भ गतिशील संदर्भ केवल पर्याप्त जानकारी के साथ एक संदर्भ लोड करने के रूप में रनटाइम को असेंबली लोड होने के लिए खोजना पड़ता है। स्थिर संदर्भों के साथ, असेंबली का स्थान (जीएसी, आवेदन सख्त, आदि) ज्ञात हैं और अभी भी Assembly.लोड का उपयोग करके पूरा किया जा सकता है। – Achilles