ASP.NET 4 веб-форм маршрутизации - PullRequest
0 голосов
/ 29 марта 2012

Я создаю CMS и хочу, чтобы все запросы отправлялись в Default.aspx, кроме маршрута администратора. Вот что у меня есть:

protected void Application_Start(object sender, EventArgs e)
    {
        RouteTable.Routes.Ignore("favicon.ico");

        RouteTable.Routes.MapPageRoute("Administrator",
            "Administrator",
            "~/Admin/Default.aspx");

        RouteTable.Routes.MapPageRoute("CMS",
            "{PageURL}",
            "~/Default.aspx");
    }

Это работает для запроса, такого как:

mywebsite.com mywebsite.com/test mywebsite.com/anothertest

Однако я не могу найти ресурс для:

mywebsite.com / другой / тест

Как я могу изменить свою маршрутизацию, чтобы она ловила несколько уровней?

1 Ответ

2 голосов
/ 29 марта 2012

Вы можете попробовать сделать ваше {PageURL} в {*PageURL} (или я даже думаю, что {*} будет работать, но я не уверен), используя подстановочные знаки маршрута.

Или вы можете сделать что-то вроде PageURL/{*TheRest}

Просто помните, что подстановочные знаки очень мощные и должны быть указаны в конце ваших маршрутов, так как маршруты определены в порядке.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...