2010-03-17 18 views
151

में Microsoft.csharp.dll क्या है यह DLL विजुअल स्टूडियो 2010 प्रोजेक्ट्स में डिफ़ॉल्ट रूप से जोड़ा जाता है। इस नई असेंबली के लिए क्या उपयोग किया जाता है? इसमें परावर्तक का उपयोग करके इसे देखने के बाद बहुत कुछ शामिल नहीं लगता है और Google के बारे में ऐसा कुछ नहीं लगता है।.NET 4.0

उत्तर

174

इसका उपयोग तब किया जाता है जब आप अपनी परियोजना में dynamic keyword का उपयोग करते हैं। असेंबली में सी # रनटाइम बाइंडर होता है।

सी # कंपाइलर अनिवार्य रूप से लाइब्रेरी में निकाला गया है ताकि यह dynamic कीवर्ड का समर्थन करने के लिए आवश्यक कोड को उत्सर्जित, संकलित और चला सके। पहली बार जब आप अपने कोड में dynamic का उपयोग करते हैं, तो यह असेंबली (साथ ही System.dll, System.Core.dll और System.Dynamic.dll) आपके ऐपडोमेन में लोड हो जाएगी।

+2

क्या आप अनुमान लगाएंगे कि उन्होंने डिफ़ॉल्ट रूप से इसका संदर्भ क्यों चुना? क्या हम सभी वर्तमान में 'गतिशील' का उपयोग कर रहे हैं जो हम वर्तमान में हैं (यानी कभी नहीं)? –

+4

@mo यह समान है कि वे सभी फ़ाइलों के लिए स्वचालित रूप से 'System.Linq;' का उपयोग कैसे करते हैं। यह सिर्फ नई भाषा सुविधाओं को थोड़ा और निर्बाध बनाता है। यदि आप 'गतिशील' का उपयोग करना चाहते हैं, तो यह आपके हिस्से पर कोई प्रयास नहीं करता है। –

12

इसे अभी तक हटा दिया गया है। अभी तक कोई समस्या नहीं है।

+13

यदि आपकी प्रोजेक्ट गतिशील कीवर्ड का उपयोग नहीं करता है, तो मुझे लगता है कि .cs संदर्भ फ़ाइल में <संदर्भ संदर्भ = "Microsoft.CSharp" /> 'कहने वाली रेखा को निकालना ठीक है। – Cheeso

+0

धन्यवाद टॉमटॉम और @ चेसियो। मैं एकता के साथ उपयोग करने के लिए एक .dll (फ्रेमवर्क 3.5 पर सेट) बनाने की कोशिश कर रहा था, और इसे .csproj फ़ाइल से हटाकर चाल चल रही थी। – Wolfram

+0

यह "उत्तर" प्रश्न के नीचे एक टिप्पणी के रूप में अधिक उपयुक्त है। हालांकि यह एक कामकाज का सुझाव देता है, यह वास्तव में इस सवाल का जवाब नहीं देता कि नई असेंबली क्या है। – toonice