2012-05-29 8 views
6

विजुअल स्टूडियो 11 एक्सप्रेस बीटा का उपयोग करके लिखे गए मेरे विंडोज 8 ऐप में, मैं ऐरेलिस्ट का उपयोग नहीं कर सकता।मेरा ऐरेलिस्ट कहाँ गया? मेट्रो ऐप

using System.Collections; 


ArrayList al = new ArrayList(); 

संकलक त्रुटि:

The type or namespace name 'ArrayList' could not be found (are you missing a using directive or an assembly reference?)

यह कुछ नया है यहाँ मेरी कोड है? मैं प्यार करता हूँ ArrayLists :)

+4

".नेट फ्रेमवर्क वर्ग पुस्तकालय प्रणाली में कई नई जेनेरिक संग्रह कक्षाओं में शामिल है। संग्रह। जेनेरिक नेमस्पेस। सिस्टम में ArrayList जैसे वर्गों के बजाय जब भी संभव हो, इन्हें इस्तेमाल किया जाना चाहिए। चयन नामस्थान। " http://msdn.microsoft.com/en-us/library/512aeb7t.aspx – Styxxy

+0

आपका कोड केवल ArrayLists का उपयोग न करके बेहतर हो सकता है। –

उत्तर

13

विनरेट के लिए, उन्होंने सभी गैर-जेनेरिक संग्रहों को बाहर निकाला - यह तेज़ है और आपके कोड को और अधिक विश्वसनीय बनाता है। इसके बजाय सूची < टी > का उपयोग करें।

ps ... यह आखिरी बार नहीं होगा कि "उन्होंने एपीआई को क्यों हटा दिया?" जबकि WinRT

1

संपादित

ArrayList के प्रलेखन को देखते हुए, यह 4.0 संस्करण तक उपलब्ध है। .NET Framework के अपने प्रोजेक्ट संस्करण की जांच करें। यह देखते हुए कि आप मेट्रो के लिए लिख रहे हैं, यह 4.5 (कम से कम) होना चाहिए।

अधिक जानकारी इस पोस्ट पर देख सकते हैं: मेट्रो शैली अनुप्रयोगों के लिए

How to use ArrayList class in metro style class library project?

और System.Collections नाम स्थान ArrayList प्रकार के का अभाव है।

+0

@mattytommo: सही किया गया। – Tigran

+0

+1 कल जैसा कि मैंने दैनिक वोट कैप मारा है! कल मुझे इस पोस्ट में मुझे याद दिलाने के लिए टैग करें :) – mattytommo

0

आप WinRT ऐप में ArrayList का उपयोग नहीं कर सकते हैं, तो आपको List का उपयोग करना होगा।

+0

'सिस्टम' चयन 'नामस्थान में मेट्रो स्टाइल प्रशंसा के लिए' ऐरेलिस्ट 'उपलब्ध नहीं है। – Tigran

+0

@ टिग्रान फिर से मेरा जवाब जांचें :) – mattytommo

+0

आप किस नामस्थान में ArrayList खोज रहे हैं? मैं टिग्रान से सहमत हूं, यह मेरे पर्यावरण में से किसी एक में नहीं है। –

1

मेट्रो स्टाइल ऐप्स के लिए .NET 4.5 में ArrayList उपलब्ध नहीं है। यदि आपको ऑब्जेक्ट सूची की आवश्यकता है, तो सूची के सामान्य संस्करण का उपयोग करें, List<object> का उपयोग करें।

मेट्रो शैली के लिए नेट के लिए API संदर्भ एप्लिकेशन, यहाँ एक नज़र रखना: http://msdn.microsoft.com/en-us/library/windows/apps/hh454064%28v=vs.110%29.aspx

0

यह .NET फ्रेमवर्क संस्करण है कि आप प्रयोग कर रहे हैं पर निर्भर करता है। ArrayList .NET 4.5.1 में समर्थित नहीं है। संग्रह प्रकार के रूप में आपको ArrayList के बजाय सूची के सामान्य रूप, List<T> का उपयोग करना चाहिए।

यहाँ एक नज़र डालें:

Is List<Object> a good replacement for ArrayList?

और आप यहां और सीख सकते हैं:

https://msdn.microsoft.com/en-us/library/41107z8a.aspx