我有如下模型
class MyClass()
{
public int Id { get; set; }
public List<Item> Items { get; set; }
}
class Item
{
public int Id { get; set; }
public string Name { get; set; }
}
两者都添加到DBContext
as DbSets
,现在我想过滤掉MyClass
使用的值Name
财产在Items
收藏。我该怎么做呢?
首先,以这种方式纠正你的 POCO:
public class MyClass
{
public int Id { get; set; }
public virtual ICollection<Item> Items { get; set; }
}
public class Item
{
public int Id { get; set; }
public string Name { get; set; }
public virtual MyClass MyClass {get;set}
public int MyClassId {get;set}
}
Usage:
提出的查询将返回所有MyClass
实例,其中最后一个 item's Name
将满足条件:
var answer = db.MyClass.Where(c => c.Items.Any(item => item.Name == "Sam")).ToList();
该查询将返回所有MyClass
实例,其中all item's Name
将满足条件:
var answer = db.MyClass.Where(c => c.Items.All(item => item.Name == "Sam")).ToList();
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)