mokeev1995
@mokeev1995
fullstack web dev

ASP .NET Core: Routing. Как сделать несколько категорий в начале URL?

Итак, есть задача:

Надо пропускать запросы на урл

site.com/events/2017/06/wwdc.html

или же в более общем виде

site.com/category1/subcategory1/subcategory2/...../subcategoryN/page-title.html


как ещё один пример:

site.com/cars/tesla/model-s/is-it-worth-it.html

на контроллер ArticlesController c action Index(string title) или какой-то такой...

Во время компиляции кол-во этих подкатегорий не известно, то есть один article может иметь 1 категорию и всё, а другой штуки 3-4, а то и 5. Но однозначно известно то, что все такие страницы заканчиваются на /pageTitle.html, где pageTitle -- это некоторый заголовок страницы, вероятно, уникальный.

Встроенными средствами роутинга ASP.Net Core я не нашел пути это реализовать, а документация не слишком то поясняет, как можно переопределить поведение.

Так вот, возможно ли так сделать и если да, то как?
  • Вопрос задан
  • 230 просмотров
Решения вопроса 1
mokeev1995
@mokeev1995 Автор вопроса
fullstack web dev
Если поставить это в конец файла что-то такое, то всё должно заработать, но придётся вручную всё разбирать.
app.UseMvc(routes =>
        {
            routes.MapRoute(
                name: "category-article",
                template: "{*article}",
                defaults: new
                {
                    controller = "Home",
                    action = "ReadCategoryAndPage"
                });
        });


Более подробно тут можно почитать
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы