各アイテムが親を持つことができるメニューシステムがあります。だから、構造はこのようなものです
私がやりたいことは、現在のページのリンクの「パンくずリスト」スタイルのリストを表示することです。したがって、ユーザーが ~/CVR.aspx を使用していた場合、次のように表示する必要があります。
CVR コントロール - CVR
したがって、行の親が null になるまで、すべての親メニュー項目のリストを再帰的に取得する SQL クエリが必要です)。
何か案は?
SQL-Server の場合、単純な CTE を使用してこれを行うことができます。
WITH MenuCTE AS
(
SELECT Id, parent, Text, Url
FROM menu
WHERE Id = 8
UNION ALL
SELECT p.Id, p.parent, p.Text, p.Url
FROM MenuCTE c
INNER JOIN menu p ON c.parent = p.id
)
SELECT *
FROM MenuCTE ;
たとえば、id = 8 の場合、次のようになります。
Id parent Text Url
8 6 CVR ~/cvr.aspx
6 NULL CVR Control ~/CVRDashboard.aspx