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

Linq选择父对象,其中子对象不包含值

如何解决《Linq选择父对象,其中子对象不包含值》经验,为你挑选了1个好方法。

如果我有这样的数据库结构

class Parent {
int ID { get; set; }
string Name { get; set; }
List Children { get; set; }
}

class Child {
int ID { get; set; }
string Name { get; set; }
List Parents { get; set; }    
}

我想得到所有有孩子的父母的名单,名字不是"Dave"

因此,如果父母一个有两个孩子叫Jack和Jill,我想要他们

如果父母二有两个孩子叫萨姆和戴夫我不想要他们

如果父母三没有孩子我想要他们

如果父母四有一个名叫史蒂夫的孩子我想要他们

如果父母五有一个孩子叫戴夫,我不想要他们



1> Ivan Stoev..:

我想得到所有有孩子的父母的名单,名字不是"Dave"

与规则#3冲突:如果父3没有孩子,我想要他们.

符合所有规则的要求可描述为:

获取所有没有孩子姓名"Dave"的父母的名单

在LINQ中翻译为:

var query = db.Parent.Where(p => !p.Children.Any(c => c.Name == "Dave"));

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