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 に答える