如何在C#中将List 转换为Hashtable?
我有一个对象列表,每个对象包含Id,代码和描述。
我需要将此列表转换为Hashtable,使用Description作为键, Id作为值。
这样就可以将Hashtable序列化为JSON。
有没有办法从List 转换为Hashtable而不编写循环来遍历列表中的每个项目?
假设您的List包含Foo类型的对象(带有int Id和字符串Description)。
您可以使用Linq将该列表转换为如下所示的字典:
var dict = myList.Cast().ToDictionary(o => o.Description, o => o.Id);
如果您可以访问Linq,则可以使用ToDictionary函数。
theList.ForEach(delegate(theObject obj){dic.Add(obj.Id,obj.Description);});
另请参阅System.Collections.ObjectModel.KeyedCollection
- SQL:在VarBinary列上按顺序执行UPDATE .WRITE
- 在Windows Phone上启动pdf文件时出现System.Runtime.InteropServices.COMException
- 如何在javascript中访问ViewData
- Cold Tasks和TaskExtensions.Unwrap
- MEF GetExports 使用AllowMultiple = True返回任何内容
- 在.NET Core 1.1 csproj中引用.NET 4.5 dll?
- SQLite参考警告处理器不匹配
- SqlTransaction中的SqlDataAdapter.Fill() – 这是一个不好的做法吗?
- C#有一个很好的leveldb端口吗?