我有IEnumerable<Project>
我想知道这个列表是否有任何元素Project.ID == someID
。
有办法吗?
答案 0 :(得分:10)
是的,您想使用Any
方法(documentation)。
IEnumerable<Project> projects = SomeMethodReturningProjects();
if(projects.Any(p => p.ID == someID))
{
//Do something...
}
答案 1 :(得分:5)
您可以使用Any()扩展程序。
var hasAny = projectList.Any(proj => proj.ID == someID);
或者,如果您想获得该记录,可以使用FirstOrDefault():
var matchedProject = projectList.FirstOrDefault(proj => proj.ID == someID);
如果找不到匹配的内容,则会返回null
,但如果确实找到了该对象,则会将其拉出。
答案 2 :(得分:4)
使用
projects.Any(p => p.ID == someID)
如果谓词与任何元素匹配,则返回true(布尔值)。
答案 3 :(得分:3)
是的,使用Any
扩展方法:
list.Any(p => p.ID == someID);