首页 新闻 会员 周边

c# 这个lambda表达式应该怎么写

0
悬赏园豆:20 [已解决问题] 解决于 2019-08-11 17:14

我要找到爸爸和他的所有性别为男的孩子

public List<爸爸> test123(int id)
{
var a = _爸爸Repository.GetAll()
.Where(t=>t.Id==id&& t.孩子.Any(c=>c.性别== 性别.男))
.Include(t => t.孩子).ToList();
return a;

    }

我这样写赛选没起到作用,结果里依然有男有女.

问题补充:

public class 爸爸: Entity
{
public string name { get; set; }
public List<Childrens> 孩子{ get; set; }
}

pchief的主页 pchief | 初学一级 | 园豆:10
提问于:2019-08-11 15:10
< >
分享
最佳答案
0

很明显 缺少 最后的 Select 重建(去掉非男孩的代码)

收获园豆:20
花飘水流兮 | 专家六级 |园豆:13560 | 2019-08-11 15:25

谢谢!虽然没没懂,但是别人给解决了
var a = _fathersRepository.GetAll()
.Where(t => t.Id == id)
.Include(t => t.children)
.Select(t => new Fathers { children = t.children.Where(c => c.gender == Genders.男).ToList() }).ToList();

pchief | 园豆:10 (初学一级) | 2019-08-11 17:13
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册