7
मेरे पास एक वीएस -2008 सी # .NET 3.5 एप्लिकेशन है जहां मैं उन ऑब्जेक्ट्स की एक आईनेमरेबल सूची दिए गए ऑब्जेक्ट्स का हैशटेबल बनाना चाहता हूं।एक शब्दकोश भरना <> एक आईनेमरेबल <> स्रोत
असल में, यह इस तरह दिखता है:
public class MyCollection<T> : IEnumerable<T>
where T: IMyData, new()
{
private IDictionary<int, string> collection_ = new Dictionary<int, string>();
// ...
public void Add(T item)
{
collection_.Add(item.ID, item.Text);
}
public static MyCollection<T> Create(IEnumerable<T> source)
{
MyCollection<T> c = new MyCollection<T>();
foreach(T item in source)
{
c.Add(item);
}
return c;
}
}
यह काम करता है, लेकिन मुझे आश्चर्य है कि अगर वहाँ एक से दूसरे IEnumerable स्रोत से कॉपी करने का एक बेहतर तरीका नहीं है। कोई सुझाव?
धन्यवाद, PaulH
आपका 'Create' विधि अतर्कसंगत लगता है; यह एक खाली 'MyCollection' नामित 'c' बनाता है, इसके पैरामीटर 'स्रोत' के तत्वों के लिए सामान करता है, फिर भी खाली-खाली' c' देता है। और मैं आपको संदेह का लाभ दे रहा हूं कि 'IMyData' में' जोड़ें 'विधि है। –
Domenic
@Domenic - आप सही हैं। मैंने उस बुरी तरह नकल की। मैंने इसे सही कर दिया है। आपका जवाब वह था जो मैं खोज रहा था, यद्यपि। धन्यवाद। – PaulH