如何转换List<;对象>;到C#中的哈希表
本文关键字:对象 gt 哈希表 lt 何转换 转换 List | 更新日期: 2023-09-27 17:47:24
我有一个对象列表,每个对象都包含一个Id、Code和Description。
我需要将此列表转换为哈希表,使用Description作为键,使用Id为值。
这样,Hashtable就可以串行化为JSON。
有没有一种方法可以从List<对象>到Hashtable,而不编写循环来遍历列表中的每个项?
让我们假设您的List包含Foo类型的对象(具有int Id和字符串Description)。
您可以使用Linq将该列表转换为类似以下的字典:
var dict = myList.Cast<Foo>().ToDictionary(o => o.Description, o => o.Id);
如果您可以访问Linq,则可以使用ToDictionary函数。
theList.ForEach(delegate(theObject obj) { dic.Add(obj.Id, obj.Description); });
同时查看System.Collections.ObjectModel.KeyedCollection<TKey, TItem>
。这似乎更符合你想要做的事情。