我有以下表,的MenuItems,在數據庫中:如何在Linq2Sql中做遞歸查詢?
ID ParentID Name
--- --------- -----
1 0 Item 1
2 1 Item 2
3 1 Item 3
4 0 Item 4
5 3 Item 5
我想寫一個擴展方法來獲得所有菜單項樹的根。事情是這樣的:
public IQueryable<MenuItem> GetToRoot(this IQueryable<MenuItem> source, int menuItemID)
{
return from m in source
????
????
select m;
}
如果我把上面的ID爲3的菜單項的數據這種擴展方法,我應該得到:
ID ParentID Name
--- --------- -----
1 0 Item 1
3 1 Item 3
這可能與LINQ2SQL只有一個呼叫數據庫?