asp.net Webforms MapPageRoute порядок приоритета - PullRequest
2 голосов
/ 05 июня 2010

Я пытаюсь использовать функцию MapPageRoute в Visual Studio 2010 и .NET Framework 4.0 с приложением asp.net webforms.

Что я заметил, так это то, что если я определю маршрут страницы под названием «По умолчанию» ниже и страница Default.aspx существует в проекте, то маршрут делает не работает.

routes.MapPageRoute("Default", "default.aspx", "~/Page2.aspx");
routes.MapPageRoute("Test", "test.aspx", "~/Page2.aspx");

Если я изменю имя Default.aspx в проекте на Default_1.aspx, тогда маршрут работает нормально.

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

1 Ответ

3 голосов
/ 05 июня 2010

В RouteCollection есть свойство с именем RouteExistingFiles, которое по умолчанию установлено в false. Это объясняет, почему маршрут по умолчанию не работает, если у вас есть страница default.aspx.

Если вы вставите routes.RouteExistingFiles = true; перед строками кода, маршруты получат приоритет. Я не уверен на 100%, вернется ли он к файлам, если не сможет выполнить маршрутизацию - думаю, это зависит от настроенных вами маршрутов ...

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