Я использую Context.RewritePath () в приложении ASP.NET 3.5, работающем на IIS7.
Я делаю это в приложении BeginRequest событие, и все работает файл.
Запросы для / sports правильно переписываются в default.aspx? Id = 1 и т. Д.
Проблема в том, что в моем журнале IIS я вижу запросы GET для /Default.aspx?id=1, а не для /sports.
Этот вид кода отлично работал под IIS6.
Использование модуля Microsoft Rewrite недоступно из-за некоторой бизнес-логики, которая должна быть реализована.
Спасибо.
РЕДАКТИРОВАТЬ:
Кажется, мой обработчик находится слишком рано в конвейере, но если я перенесу логику в более позднее событие, тогда весь процесс перезаписи не сработает (слишком поздно, StaticFileHandler принимает мой запрос).
Я гуглил и гуглял, спрашивал вокруг, не могу поверить, что ни у кого нет этой проблемы?
EDIT:
Хлоп! Вот что я нашел на форуме IIS:
"Это связано с тем, что в интегрированном режиме IIS и asp.net совместно используют общий конвейер, а IIS теперь видит RewritePath, а в IIS6 его даже не замечал IIS - можно обойти это, используя классический режим будет вести себя как IIS6. "
Окончательное обновление : Пожалуйста, посмотрите мой ответ ниже , я обновил его с результатами после более чем года работы в рабочей среде.