2013-10-07 4 views
1

У нас есть приложение MVC4,получить подкаталог относительного URL из относительного URL

есть панель навигации на левой стороне экрана, и это дерево навигации строится динамически вместе с дополнительными параметрами.

поэтому мы храним навигационный URL в колонке в таблице (скажем /Dataset/Financial).

теперь, когда приложение размещено в подкаталоге (скажем http://localhost/xyzabcd/), Url, сгенерированный динамически из таблицы, по-прежнему нацелен на корень (то есть, http://localhost/Dataset/Financial).

Я узнал, что Url.Action() действительно решит проблему.

Теперь, поскольку он был разработан таким образом, я хотел бы знать, есть ли какой-либо стандартный способ получения полного URL-адреса для относительного URL-адреса (так что нам не нужно вносить изменения в db)? Есть ли встроенный или существующий метод для этого?

ответ

0

Если вы добавите схему/протокол, она должна предоставить полное доменное имя, которое вы ищете.

Пример

Url.Action("Action", "Controller", new { routeData = 1}, "http") 

Обратите внимание, что routeData я просто положить в качестве заполнителя. Вы можете установить это на null, если хотите. Кроме того, «http» также может быть «https»

+0

У меня нет имен Action и Controller отдельно. У меня есть «Controller/Action». – dotNETbeginner

+0

Я бы разделил их либо в базе данных, либо с помощью строковых манипуляций , В противном случае нет смысла использовать 'Url.Action()' –

+0

Мне известно о 'Url.Action()', я хочу знать, есть ли другой способ? – dotNETbeginner

Смежные вопросы