如何根据条件从列表中获取元素列表

时间:2019-12-23 05:01:07

标签: c# linq

我要根据其他列表中的元素从列表中选择元素。

list1 = List<FileModel>(){..};
List2 = List<WindowModel>(){...};

List3 = List1.Where(d => List2.Select(x => x.FileName).Contains(d.FileName));

但是我遇到了一个错误(无法将System.Collections.Generic.IEnumberable <>隐式转换为System.Collections.Generic.List <>)。如何在这里完成?

2 个答案:

答案 0 :(得分:4)

使用ToList()方法。

List1.Where(d => List2.Select(x => x.FileName).Contains(d.FileName)).ToList();

答案 1 :(得分:-2)

使用ToList<FileModel>();

List1.Where(x => List2.Select(y => y.FileName).Contains(x.FileName)).ToList<FileModel>();