Моя команда обновляется с ASP.NET 3.5 до ASP.NET 4.0. В настоящее время мы используем Helicon ISAPI Rewrite для сопоставления http://localhost/<account-name>/default.aspx
с http://localhost/<virtual-directory>/default.aspx?AccountName=<account-name>
, где <account-name>
- это переменная строки запроса, а <virtual-directory>
- виртуальный каталог (естественно).
Перед обновлением тильда (~) разрешается в http://localhost/<account-name>/...
(что я хочу, чтобы она выполнялась), а после обновления тильда разрешается в http://localhost/<virtual-directory>/...
, что приводит к ошибке, поскольку требуется строка запроса <account-name>
.
Я бы хотел избежать замены всего относительными путями, потому что в нашей системе есть несколько функций, которые используют весь URL-адрес, а не только относительный путь.
Как бы то ни было, я использую IIS7 в Windows 7, Visual Studio 2010 с ASP.NET 4.0 и 64-битную версию Helicon ISAPI Rewrite. Если я вернусь к версии ASP.NET 3.5, она все равно будет работать нормально (что заставило меня поверить, что в IIS ничего не изменилось, если только оно не находится в пуле приложений 4.0 - когда я переключаюсь между 3.5 и 4.0, мне приходится менять пул приложений. в IIS).
Любые идеи? Заранее спасибо!