我有 2 个列表:
myObject object1 = new myObject(id = 1, title = "object1"};
myObject object2 = new myObject(id = 2, title = "object2"};
myObject object3 = new myObject(id = 3, title = "object3"};
//List 1
List<myObject> myObjectList = new List<myObject>{object1, object2, object3};
//List 2
List<int> idList = new List<int>{2, 3};
有没有一种方法可以使用 Linq 仅提取存在于第二个列表中的第一个列表中的对象,以便我剩下:
{object2, object3}
我查看了 intersect,但它似乎只有在两个列表的类型相同时才有效。
如有任何帮助,我们将不胜感激。
谢谢。
最佳答案
LINQ 解决方案:
myObjectList = myObjectList.Where(X => idList.Contains(X.id)).ToList();
关于c# - Linq 选择两个列表中都存在的项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3913398/