【发布时间】:2018-04-23 16:28:07
【问题描述】:
我可以直接用 LINQ 构建字典吗?
我有以下代码:
var L = (from C in AppDomain.CurrentDomain.GetAssemblies().AsParallel()
where !(C.FullName.Contains("System") || C.FullName.Contains("Microsoft") || C.FullName.Contains("mscorlib"))
from E in C.GetManifestResourceNames().ToList()
select new KeyValuePair<string, string>(E, C.FullName)).ToDictionary(_ => _.Key, _ => _.Value);
是否可以直接构建字典而不是生成 KeyValuePair 对象然后从它们构建字典?
【问题讨论】:
-
通常你不需要
KeyValuePair来创建带有 linq 的字典,也许是一个匿名类型来保存键和值。所以是的,这是可能的。 -
你能给我指出一个语法正确的例子吗?
-
@Dido 和 Camilo,这不是重复的,因为您链接到的问题使用流畅的语法而不是 linq 的解决方案。