我有树状结构表,
Table{Id, ParentId, Name}
其中Id是主键,父ID是外键,但是在同一个表中。它将具有类似
的值Id ParentId Name
1 - N1
2 1 N2
3 1 N3
4 2 N4
这里,N2和N3是N1的子节点,N4是N2的子节点
我正在使用Entity框架和MVC构建像webservice一样的休息。
如何使用实体框架递归获取所有子节点?
答案 0 :(得分:4)
如何使用实体框架递归获取所有子节点?
EF不支持递归查询。您可以在注释中轻松映射这样的结构,如@Eranga所引用的那样,但是一旦加载实体,您必须手动定义预先加载(=必须说它应该有多深)或者您的子实体将在第一次加载时通过延迟加载来加载访问(这是非常低效的)。
在EF中使用分层结构的最佳方法是使用数据库视图隐藏分层SQL查询或直接使用SQL /存储过程。