मान लीजिए कि मेरे पास IEnumerable<int>
है और मैं चाहता हूं कि इन्हें उनके ASCII- समकक्ष वर्णों में परिवर्तित किया जाए।IENumerable.Cast() बनाम IENumerable में कास्टिंग। चयन करें()
एक पूर्णांक के लिए, यह केवल (char)i
होगा, इसलिए हमेशा collection.Select(i => (char)i)
होता है, लेकिन मैंने सोचा कि यह collection.Cast()
का उपयोग करने के लिए एक टैड क्लीनर होगा।
क्या कोई बता सकता है कि मुझे InvalidCastException
क्यों मिलता है जब मैं collection.Cast<char>()
का उपयोग करता हूं लेकिन collection.Select(i => (char)i)
के साथ नहीं?
संपादित करें: दिलचस्प है, जब मैं collection.OfType<char>()
पर कॉल करता हूं तो मुझे एक खाली सेट मिलता है।
धन्यवाद! किंडा काउंटर-अंतर्ज्ञानी, लेकिन यह समझ में आता है – hehewaffles
जॉन स्कीट के ब्लॉग का लिंक टूटा हुआ प्रतीत होता है। यहां एक वैकल्पिक है: http://edulinq.googlecode.com/hg/posts/33-CastAndOfType.html –
@ टाइलर गिल, यह लिंक भी टूटा हुआ है – 3per