从列表<对象>按列表选择

本文关键字:列表 选择 int 对象 | 更新日期: 2023-09-27 18:33:24

我有一个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 语法找出解决方案

从列表<对象>按列表<int>选择

假设记录有一个RecordId: int字段:

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

从原始记录列表中,选取具有显示在记录 ID 列表中的记录 ID 的记录。