मैं निम्नलिखित डालीCast एक ऐसी सूची <object> या IEnumerable <object>
private void MyMethod(object myObject)
{
if(myObject is IEnumerable)
{
List<object> collection = (List<object>)myObject;
... do something
}
else
{
... do something
}
}
प्रदर्शन करने के लिए कोशिश कर रहा हूँ लेकिन मैं हमेशा निम्नलिखित excepction के साथ समाप्त करने के लिए वस्तु प्राप्त System.Collections.Generic.List 1[MySpecificType]' to type 'System.Collections.Generic.List
1 [System.Object] '
मुझे वास्तव में काम करने की आवश्यकता है क्योंकि इस विधि को एकल ऑब्जेक्ट्स और संग्रह दोनों अनिर्दिष्ट प्रकार प्राप्त करने के लिए बहुत सामान्य होना आवश्यक है।
क्या यह संभव है, या इसे पूरा करने का एक और तरीका है।
धन्यवाद।
धन्यवाद। यह किया –
@ सर्जीओ, आपको यह जांचना चाहिए कि अगर आप रनटाइम त्रुटियों के जोखिम से बचना चाहते हैं तो आपको कास्टिंग करने से पहले myObject IEIumerable की बजाय IList लागू करता है। कई अंतर्निर्मित संग्रह IENumerable लागू करते हैं लेकिन IList नहीं (उदाहरण के लिए, शब्दकोश <>, हैशसेट <>, हैशटेबल, कतार, ढेर आदि)। – LukeH
@Luke: यदि यह एक सूची है (जो प्रश्न द्वारा निहित है), यह IList को लागू करेगा। –
erikkallen