当前位置:  开发笔记 > 编程语言 > 正文

过滤属性值上的linq列表

如何解决《过滤属性值上的linq列表》经验,为你挑选了4个好方法。

我有一个List和一个List.customObject类具有ID属性.如何获取List仅包含List使用LINQ中ID属性的对象?

编辑:我接受了Konrads的回答,因为它更容易/更直观地阅读.



1> Konrad Rudol..:
var result = from o in objList where intList.Contains(o.ID) select o



2> Robin Winslo..:
using System.Linq;

objList.Where(x => intList.Contains(x.id));



3> Henryk..:

我刚才遇到了类似的问题并使用了以下解决方案.如果您已经拥有了对象列表,则可以删除int列表中未找到的所有对象,只留下objList中的匹配项.

objList.RemoveAll(x => !intList.Contains(x.id));



4> Matt Hamilto..:

未经测试,但它会是这样的:

var matches = from o in objList 
                  join i in intList on o.ID equals i
                  select o;

@Konrad只是对它进行了测试,它确实有效 - 我只是写了一个错字,我写的是"i.ID"而不是"i".

推荐阅读
围脖上的博博_771
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有