NetTiers学习笔记12---deepload的递归

deepload的递归指的是什么, 何时用deepload的递归?

让我举个例子来说明这些问题吧


以下我们以node来举例

数据结构

NetTiers学习笔记12---deepload的递归 

id是主键, pid是外键


生成后并使用deepload, deepload的参数说明可以看第一篇文章

Node node  =  DeepLoadById( 1 false , DeepLoadType.IncludeChildren,  typeof (Node),  typeof (TList < Node > ));

 


此时我们可以使用

node.PidSource 类型为Node

node.NodeCollection 类型为TList<Node>

node.NodeCollection[0] 类型为Node

分别表示父节点,和子节点集合


那么我们要取父节点的父节点该如何取呢?

聪明的宁一定想到了 node.PidSource.PidSource 

可为什么取出来是null呢?

因为我们没有使用递归

 

我们将代码改为

Node node  =  DeepLoadById( 1 true , DeepLoadType.IncludeChildren,  typeof (Node),  typeof (TList < Node > ));



 

好了, 这样便完成了 对id==1 的node 的读取, 并且读取出所有的父节点(递归)及子节点(递归) 

你可能感兴趣的:(学习笔记)