Получить URL-адрес маршрута по умолчанию в контроллере - PullRequest
3 голосов
/ 01 марта 2010

Может кто-нибудь сказать мне, каков синтаксис для получения фактического URL-адреса для маршрута по умолчанию?

Я бы хотел сделать что-то вроде:

string url = RouteTable.Routes["Default"].ToString();
//(even though that code is completely wrong)

, чтобы я мог иметь значение URL для маршрута, с которым можно работать.

Пока что я пробовал метод .GetVirtualPath(), но он возвращает только данные маршрута для текущего контроллера.

спасибо

Dave

1 Ответ

11 голосов
/ 01 марта 2010

Маршрут может соответствовать любому количеству URL. Таким образом, у маршрута нет URL. Чтобы получить URL-адрес из маршрута, вы должны будете предоставить ему данные о маршруте, для которых вы хотите получить URL-адрес. Для этого вы просто используете метод RouteUrl() в свойстве Url, Url.RouteUrl().

Обновление

Если вам нужен URL, который будет сгенерирован, если вы укажете маршрут со значениями по умолчанию, вы можете сделать что-то вроде этого:

var url = Url.RouteUrl("Default", ((Route)RouteTable.Routes["Default"]).Defaults);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...