treeview无限级别节点,如何根据输入的某个节点ID用EF查询出父节点或者子节点?SQL我知道用递归可以实现,不知道EF怎么写呢?求指导
------解决思路----------------------
找父节点:
var query = db.Where(x => x.id == node.parentid);
找根节点
while (node.parentid != null)
node = db.Single(x => x.id == node.parentid);
找子节点
var query = db.Where(x => x.parentid == node.id);
找全部子节点
IEnumerable<Node> getChildren(Node node)
{
return db.Where(x => x.parentid == node.id)..Concat(db.Where(x => x.parentid == node.id).SelectMany(x => getChildren(x)));
}