jma*_*erx 3 c# linq ienumerable
我有一个 IEnumerable<Project>
我想知道这个列表是否有任何元素Project.ID == someID.
有没有办法做到这一点?
yoo*_*er8 11
是的,您想使用该Any方法(文档).
IEnumerable<Project> projects = SomeMethodReturningProjects();
if(projects.Any(p => p.ID == someID))
{
//Do something...
}
Run Code Online (Sandbox Code Playgroud)
您可以使用Any()扩展方法.
var hasAny = projectList.Any(proj => proj.ID == someID);
Run Code Online (Sandbox Code Playgroud)
或者,如果要获取该记录,可以使用FirstOrDefault():
var matchedProject = projectList.FirstOrDefault(proj => proj.ID == someID);
Run Code Online (Sandbox Code Playgroud)
null如果找不到任何匹配项,它将返回,但如果确实找到它,则会拉出整个对象.