我有一个实体,它又引用了同一个表,它是它的父表。下面的表格可以更好地描述它。
| ID | Source_ID |
+----+----------+
| 1 | null |
| 2 | 1 |
| 3 | 1 |
| 4 | 2 |
| 5 | 4 |
现在,当我在 ID = 5 时,我需要获取它的最终父级,即 ID = 1。
我尝试编写如下函数:
<entity> ultimateparententity;
internal <entity> FetchParentComponentRecursive(<entity> entity)
{
if (component.ParentEntity!= null)
{
FetchParentComponentRecursive(entity.ParentEntity);
}
else
{
ultimateparententity = entity;
return component;
}
return entity;
}
我正在使用在类级别声明的变量来了解最终父级。我正在返回变量“实体”,它以后不会使用,但最终父实体是使用的。这种方法有效,但我对此不太满意。任何方向都会有所帮助。