将导航属性限制为具有实体框架的父项
本文关键字:框架 实体 属性 导航 | 更新日期: 2023-09-27 17:49:27
我有一个主详细信息关系,其中详细信息记录也有一个以父/子形式链接到它自己(一个主详细信息到它自己)。
我们叫它们Order/Item/Item Child。
每个item和item子条目都有一个指向Order的外键引用。
子节点有一个指向item的外键引用,因此允许item嵌套或可能的rollup。
但是,由于子元素也与订单有关系,因此每当我使用navigation属性访问项目时,我也会获得这些项目。
有没有办法限制框架内的导航属性,比如
order.Items.Where(i => !i.ParentId.HasValue)
而不是在每个只需要父项的代码点都这样做。
你可以添加一个属性
public ICollection<Item> ItemsWithoutParent {
get {
return this.Items.Where(i => !i.ParentId.HasValue);
}
}