7
我有一个VS2008 C#.NET 3.5应用程序,我想创建一个给定这些对象的IEnumerable列表的对象的哈希表。用IEnumerable <>来源填充字典<>来源
基本上,它看起来像这样:
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'方法似乎是荒谬的;它会创建一个名为'c'的空'MyCollection',对其参数'source'的元素进行操作,然后返回仍然为空的'c'。假设'IMyData'有一个'Add'方法,我会给你带来怀疑的好处。 –
Domenic
2011-03-08 17:41:48
@Domenic - 你是对的。我严重拷贝了它。我纠正了它。虽然你的答案是我正在寻找的。谢谢。 – PaulH 2011-03-08 19:07:37