【发布时间】:2014-12-16 05:01:46
【问题描述】:
我正在使用带有 Code First 的 Entity Framework 6,并且我有一个具有以下结构的表:
public class Item
{
[Key]
public int ItemId { get; set; }
[Required]
[MaxLength(255)]
public string Name { get; set; }}
public Item Parent { get; set; }
public virtual List<Item> Children { get; set; }
}
我想知道是否有可能对数据库进行一次查询/访问,所有Items 穿过我的树直到根,提供itemId 作为参数。
例如,给我从ItemId 55 开始的所有父母,直到找不到父母。
【问题讨论】:
-
我认为不可能。可能必须映射到带有存储过程的递归 CTE。
-
在这里呼应@GraemeMiller:我最近不得不做类似的事情,这就是我最终这样做的方式。
标签: c# entity-framework