Я сейчас создаю систему FAQ, которая имеет следующую структуру URL:
Родительская категория: / faqs / parent-category / (например, / faqs / products /)
Дочерняя статья в родительской категории: / faqs / parent-category / child-article / (например, / faqs / products / how-to-build-my-product /)
У меня настроены следующие маршруты:
routes.MapRoute(
name: "Faq.Main",
template: "{controller}/{parentSlug}/",
defaults: new { controller = "Faqs", action = "Index" }
);
routes.MapRoute(
name: "Faq.Article",
template: "{controller}/{parentSlug}/{slug}/",
defaults: new { controller = "Faqs", action = "View" }
);
URL генерирует штраф для родителя, однако у меня проблема с дочерними статьями.Пример сгенерированного URL выглядит следующим образом: / faqs / how-to-build-my-product / view /? ParentSlug = products
Код в представлении для создания этих ссылок выглядит следующим образом:
<a asp-controller="Faqs" asp-action="View" asp-route-parentSlug="@faq.ParentSlug" asp-route-slug="@faq.Slug">@faq.Title</a>
Как видите, URL-адрес, созданный для дочерней статьи, отформатирован неправильно.Это должно быть / faqs / products / how-to-build-my-product /
Есть идеи, как мне это исправить?
Заранее спасибо.