Url Routing Asp.net из иерархического дерева страниц, хранящихся в базе данных
Хорошо
У меня есть куча HTML-страниц, хранящихся в базе данных mssql. Каждый ряд имеет:
- Я БЫ
- Заголовок страницы
- Содержание HTML страницы
- ParentId
ParentId есть, чтобы я мог создать иерархическое дерево страниц.
В настоящее время я использую эту строку кода для доступа к страницам...
routes.MapPageRoute("front", "{PageTitle}", "~/front.aspx");
Который затем вызывает перенаправление на front.aspx, поэтому я могу использовать:
Page.RouteData.Values["PageTitle"].ToString()
Чтобы получить то, что мне нужно, я могу отобразить соответствующую страницу в браузере.
Тем не менее, кто-нибудь может подсказать, как бы я изменил "rout.MapPageRoute", чтобы он поддерживал бесконечное иерархическое дерево, как у меня в моей базе данных. По сути, я хочу иметь возможность ввести URL-адрес, как: http://localhost/PageOne/SubPageOfPageOne т. Д.
1 ответ
Изменен:
routes.MapPageRoute("front", "{PageTitle}", "~/front.aspx");
к этому:
routes.MapPageRoute("front", "{*PageTitle}", "~/front.aspx");
это тянет все, что находится в URL (за пределами домена имя)...
затем я использовал функцию split, чтобы рекурсивно получить каждый узел, чтобы я мог проверить, существует ли он.