40

我有以下空字典

Dictionary<Guid, string> appTypeMap = new Dictionary<Guid, string>();

和以下列表:

List<ApplicationType> allApplicationTypes = _applicationTypeService.GetAll()

应用类型描述如下:

public class ApplicationType
{
   public Guid id {get; set;}
   public String name {get; set;}
}

我想使用 LINQ 填充字典。
我怎么做?谢谢。

4

2 回答 2

90
appTypeMap = allApplicationTypes.ToDictionary(x => x.id, x => x.name);

但是,它将创建一个新字典,而不是填充您的字典。

于 2013-03-10T16:05:17.803 回答
3

尝试

appTypeMap = _applicationTypeService.GetAll().Select(o => new DictionaryEntry{
  Key = o.id,
  Value = o.name
}).ToList();

不确定最后是否需要 .ToList() ....

于 2013-03-10T16:03:05.523 回答