[c#]从列表的列表中选择
标签: Linq .Net Lambda C#
发布时间: 2017/2/28 21:40:02
注意事项: 本文中文内容可能为机器翻译,如要查看英文原文请点击上面连接.

我有 List<Record>List<int>

我想选择一个新 List<Object> 通过从原始的列表中选择记录List<int>

List<Record> Records = ...
List<int> RecordIds = new List<int> { 2,4,10 }

这里有几次失败的语法

List<Record> filteredRecords = Records.Where(p => p.RecordId.Any(z => RecordIds.Contains(z))).ToList();
List<Record> filteredRecords = Records.Where(p => p.Any(z => p.RecordId.Contains(RecordIds))).ToList();
List<Record> filteredRecords = Records.Any(p => p.RecordId.Equals(RecordIds)).ToList();

我有问题找出确切的语法来实现想要的什么。我知道我可以达到这个目标,使用其他的各种方法,但我试图找出解决方案使用 linq lamba 语法

解决方法 1:

假设记录有 RecordId: int 字段︰

var filtered = Records.Where(p => RecordIds.Contains(p.RecordId)).ToList();

从原始记录列表中,你把那些 RecordId RecordIds 列表中出现。

官方微信
官方QQ群
31647020