データベースに次のようなメニュー項目のリストがあります。
ID      ParentID      ItemOrder      Name
-------------------------------------------------------    
 1       null               1        Main_1
 2       null               2        Main_2
 3       null               3        Main_3
 4       null               4        Main_4
 5       null               5        Main_5
 6       1                  4        SubMenu_1.4
 7       1                  5        SubMenu_1.5
 8       1                  8        SubMenu_1.8
 9       2                  1        SubMenu_2.1
10       3                  1        SubMenu_3.1
11       3                  2        SubMenu_3.2
12       3                  4        SubMenu_3.4
Submenu ItemOrder必ずしも 1 から始まるとは限らず、3 から始まる場合もあり、次のメニュー項目の順序は 7 などになる場合があります。
すべての親 (ゼロ レベル) メニュー項目と最初の子 (存在する場合) を返す linq クエリまたはラムダ式を作成する方法は?
期待される結果:
ID      ParentID      ItemOrder      Name
-------------------------------------------------    
 1       null             1          Main_1
 2       null             2          Main_2
 3       null             3          Main_3
 4       null             4          Main_4
 5       null             5          Main_5
 6       1                4          SubMenu_1.4
 9       2                1          SubMenu_2.1
10       3                1          SubMenu_3.1