简体   繁体   English

"Linq - 如何从仅包含另一个列表的项目的列表中选择项目?"

[英]Linq - How to select items from a list that contains only items of another list?

I have this two classes:我有这两个类:

public class Item
{
   public int Id{get;set;}
   public List<Test> TestList{get;set;} 
}
public class Test
{ 
   public int Id{get;set;}
   public Item Item{get;set;}
   public byte State{get;set;}
}

这将返回所有状态都在stateList ,我认为这就是您所需要的:

Items.Where(x => x.TestList.All(s => stateList.Contains(s.State)));

如果您只需要TestList只有状态为2的项目的项目:

tems.Where( i => i.TestList.All(li => li.State == 2))

I have similar issue:我有类似的问题:

This is code:这是代码:

List<string> mds = _userService.GetAllMDUsers();
conf = _context.BillingsConfirmationsView.Where(c=> mds.Contains(c.EmployeeShort.ToUpper()));

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM