c# – 使用LINQ组合列表列表中的属性?
发布时间:2020-12-15 08:44:31 所属栏目:百科 来源:网络整理
导读:我有一个类似的词典:Dictionary Search_Requests,List Tuple Search_Subjects,SearchData 在SearchData类中,有一个名为SearchCode的属性.我想要做的是获取此词典中出现的每个搜索代码的数组.我可以用几个循环来做这个,但我真的更喜欢使用LINQ.不幸的是,我无
我有一个类似的词典:Dictionary< Search_Requests,List< Tuple< Search_Subjects,SearchData>>>
在SearchData类中,有一个名为SearchCode的属性.我想要做的是获取此词典中出现的每个搜索代码的数组.我可以用几个循环来做这个,但我真的更喜欢使用LINQ.不幸的是,我无法理解如何做到这一点.我试过了 RequestDictionary.Select(s => s.Value.Select(z => s.Value.Select(x => x.Item2.SearchCode).ToArray()).ToArray()).ToArray(); 但那只是给我一个字符串[] [] [],这与我想要的并不相符.我可以向正确的方向努力吗? 解决方法
您可以使用
.SelectMany() 来展平结果:
RequestDictionary .SelectMany(s => s.Value.SelectMany(z => s.Value.Select(x => x.Item2.SearchCode)) .ToArray(); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |