URL-адрес маршрутизации поймать все не работает - PullRequest
0 голосов
/ 13 января 2011

Я сам перенаправляю все запросы.Я написал шаблон следующим образом:

RouteTable.Routes.Add(new Route("{*all}", new URLRouter()));

Но когда приходит запрос на www.example.com/styles/site.css, он не перехватывается обработчиком URLRouter.

Спасибо.

Ответы [ 2 ]

1 голос
/ 13 января 2011

Какая версия IIS установлена? Похоже, что запросы статических файлов даже не достигают фильтра ASP.NET ISAPI. Это поведение по умолчанию в пуле приложений в классическом режиме IIS6 и IIS7.

Обновление: Установить runAllManagedModulesForAllRequests="true" в Web.config (раздел модулей)

0 голосов
/ 17 января 2011

Я решил проблему. Проблема заключалась в том, что все запросы передавались моему обработчику URLRouter, но запрос статического содержимого (такого как styles / site.css) не собирался переменной-переменным url "all" в "{* all}", и все было содержит ноль, хотя странно то, что этот запрос содержался в requestContext.HttpContext.Request.Url. Итак, я использую requestContext.HttpContext.Request.Url, чем переменная url-параметр "все".

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