ASP.NET Webforms 4.0 Routing: как избавиться от физических URL - PullRequest
7 голосов
/ 29 марта 2010

Как бы вы достигли этого в ASP.NET Webforms 4.0 Routing;

  • .aspx страницы не должны быть доступны напрямую, страницы должны быть доступны только с маршрутами,
  • Начальная страница должна быть "/" или "/ home" или что-то еще, но не "Default.aspx".

Спасибо.

Ответы [ 2 ]

1 голос
/ 30 марта 2010

Вы можете указать игнорировать маршруты, чтобы игнорировать маршрутизацию для ваших статических обработчиков, для части статического содержимого (хотя маршрутизация, если статический файл существует, обычно без проблем направляется непосредственно в файл).

Я считаю, что метод, который вы хотите использовать, - это MapPageRoute для веб-форм, который предназначен для веб-форм. Смотрите примеры: http://msdn.microsoft.com/en-us/library/system.web.routing.routecollection.mappageroute%28VS.100%29.aspx

0 голосов
/ 29 марта 2010

Вы читали пост Скотта Гатри, в котором вводится эта тема?

http://weblogs.asp.net/scottgu/archive/2009/10/13/url-routing-with-asp-net-4-web-forms-vs-2010-and-net-4-0-series.aspx

Вы бы сделали следующее:

void RegisterRoutes(RouteCollection routes)
{
    routes.MapRoute("nameofroute", "home/", "~/Default.aspx");
}

Добавление параметров по необходимости

...