У меня есть приложение в iis, доступное как http://localhost/app/
, что означает, что все относительные ссылки, созданные UrlHelper
, разрешаются как http://localhost/app/???
.
Пример:
Url.Content("~/images/background.png")
разрешается в /app/images/background.png
Теперь проблема в том, что ISA-сервер добавляет к приложению префикс, так что приложение доступно извне как http://foo.com/prefix/app/???
Теперь mvc будет правильно обрабатывать запрос, потому что он по-прежнему думает, что путь запроса просто /app/???
, но не будет генерировать ссылки с этим префиксом при использовании UrlHelper
.
Таким образом, вопрос в том, есть ли способ сказать MVC генерировать ссылки с другим виртуальным путем, чем определено в iis?
Пример:
Url.Content("~/images/background.png")
должно разрешиться в /prefix/app/images/background.png
Я действительно не хочу создавать собственные UrlHelper
расширения, потому что это не повлияет на такие вещи, как Html.ActionLink
или RedirectToAction
.