内联字典声明<>在C#中使用FOREACH()

时间:2011-07-12 20:14:25

标签: c# syntax

任何人都可以帮助解决这样的语法:

Dictionary<string,string> dict = new Dictionary<string,string>()
{
         foreach(var i in collection<Items>)
-----add i to dictionary
}

3 个答案:

答案 0 :(得分:5)

我不是很清楚你的意思,但ToDictionary LINQ扩展方法可能对你有所帮助。例如:

var dictionary = collection.ToDictionary(item => item.Key,
                                         item => item.Value);

(显然,您可以改变从项目获取密钥和值的方式。)

答案 1 :(得分:2)

您可以使用LINQ:

Dictionary<string,string> dict = collection.ToDictionary(i => i.MyKey, i => i);

答案 2 :(得分:1)

您可以执行类似UserCollection.ForEach(d =&gt; ...将每个d.key和d.value添加到dictionay以及与选择键和值相关联的任何其他逻辑),假设用户类型的集合是List格式,或者如果它是IEnumerable,你可以做.ToList()。ForEach(...