पर आईनेमेरेबल एक्सटेंशन विधियां मेरे पास एक enum (नीचे) है कि मैं LINQ एक्सटेंशन विधि का उपयोग करने में सक्षम होना चाहता हूं।एनम
enum Suit{
Hearts = 0,
Diamonds = 1,
Clubs = 2,
Spades = 3
}
Enum.GetValues (...) वापसी प्रकार System.Array की है, लेकिन मैं एक ToList() विस्तार या उस तरह की कुछ और तक पहुँच प्राप्त नहीं कर पा रहे।
मैं सिर्फ कुछ की तरह लिखने के लिए देख रहा हूँ ...
foreach(Suit s in Enum.GetValues(typeof(Suit)).Select(x=>x).Where(x=> x != param)){}
वहाँ कुछ मैं याद कर रहा हूँ, या किसी ने मुझे समझा सकता है क्यों यह संभव नहीं है?
धन्यवाद।
जब आप किसी सूची को फ़िल्टर करना चाहते हैं, और कास्टिंग के लिए 'Cast'' के लिए मैं अधिक उपयुक्त 'ऑफ़ टाइप टाइप' देखता हूं। क्या 'सूट' की बजाय 'Int32' का उपयोग करने का कोई कारण है? –
किसी भी 'आईनेमेरेबल' के लिए जिसमें समरूप प्रकार होते हैं, 'ऑफ टाइप' और 'कास्ट ' वस्तुतः समान रूप से प्रदर्शन और व्यवहार करेगा। 'सूट 'की बजाय' Int32' का उपयोग करने के लिए मुझे सच में यकीन नहीं है कि मैंने ऐसा क्यों किया - मेरा जवाब सही कर दिया गया है। –
वैसे ही काम करता है जैसे मैं ढूंढ रहा था। धन्यवाद! – ahawker