Запретить asp.net mvc создавать URL с подпапками - PullRequest
1 голос
/ 15 января 2009

Мой сайт размещен в подпапке (ApplicationPath). У меня есть ISAPI Rewrite для перевода с www.domain.com/Subfolder на www.domain.com. Проблема в том, что asp.net MVC Html.ActionLink () (и аналогичные функции) генерирует URL-адреса с www.domain.com/Subfolder. Я хочу иметь возможность удалить «/ Подпапку» из URL, поскольку ISAPI Rewrite позаботится о том, чтобы ссылка работала. Как мне это сделать? Пожалуйста, я пробовал миллион раз безуспешно.

Ответы [ 4 ]

1 голос
/ 02 июля 2009

В вашем классе маршрута переопределите метод GetVirtualPath, добавив в него "../" к началу свойства Url объекта VirtualPathData, возвращаемого вызовом base.GetVirtualPath.

0 голосов
/ 15 января 2009

Я думаю, вы должны написать свой собственный класс Route, который перепишет URI.

0 голосов
/ 15 января 2009

переопределение класса Route не работает, он не обрабатывает ApplicationPath. Я думаю, что мне нужно переопределить GetVirtualPath класса RouteCollection, но я не знаю, как это сделать.

0 голосов
/ 15 января 2009

Я не верю, что есть способ сделать это, встроенный в фреймворк. Вам нужно написать свой собственный метод расширения Html-помощника.

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