मैं एक शब्दकोश वस्तु बना रहा हूं, IEnumerable
के ToDictionary()
विस्तार विधि का उपयोग कर:आपको डुप्लिकेट कुंजी कैसे मिलती है जो ToDictionary() विफल हो गई है?
एक ही कुंजी के साथ एक आइटम पहले से ही किया गया है:
var dictionary = new Dictionary<string, MyType> (myCollection.ToDictionary<MyType, string>(k => k.Key));
जब वह निष्पादित निम्नलिखित
ArgumentException
फेंकता जोड़ा।
मुझे यह बताने के लिए कैसे मिलता है कि डुप्लिकेट कुंजी क्या है?
यह आपके प्रश्न का उत्तर नहीं है, लेकिन ToDictionary वास्तव में एक शब्दकोश बनाता है। आप उस शब्दकोश को किसी अन्य शब्दकोश के निर्माता में क्यों गुजर रहे हैं? और जेनेरिक टाइप पैरामीटर निर्दिष्ट क्यों नहीं करते हैं? मैं उस सामान के बिना अपना उदाहरण लिखूंगा: 'var dictionary = myCollection.ToDictionary (x => x.Key);' –
1. क्योंकि यह शब्दकोश के लिए कन्स्ट्रक्टर ओवरलोड में से एक है। लेकिन आपके पास एक बिंदु है। –
2. संभवतः, प्रकार निर्दिष्ट करना मुक्केबाजी की किसी भी संभावना को समाप्त करता है, लेकिन मुझे इसके बारे में निश्चित नहीं है। –