Получите виртуальный URL при использовании маршрутизации с помощью WebForms
-
24-10-2019 - |
Вопрос
Как получить виртуальный URL, а не имя страницы WebForms, с которым находится URL -адрес при использовании System.Web.Routing с WebForms.
Я хочу URL "/Подтверждение/5", а не "Подтверждение.aspx".
Решение
Чтобы получить направленный URL Для страницы, которую вы в настоящее время посещаете, использовать Request.Url
, как отмечает Павел.
Если вам нужно получить маршрутированный URL -адрес для другой страницы (например, при создании гиперссылки на другую страницу), используйте Page.GetRouteUrl
метод
Вот фрагмент кода, показывающий использование Page.GetRouteUrl
. Анкет Это из моей статьи, Маршрутизация URL в ASP.NET 4:
lnkcategory.navigateurl = page.getRouteurl ("View Category", new {CategoryName = "Beverages"});
В приведенном выше фрагменте «категория просмотра» - это имя правила маршрутизации, которое я хочу использовать. CategoryName
является одним из параметров маршрутизации, и я хочу использовать значение «напитки». Приведенный выше звонок Page.GetRouteUrl
Возвращает строку «/категории/напитки». (Конечно, точная строка - это возврат, зависит от правила маршрутизации «категория просмотра» и значений параметров, но, надеюсь, вы получите идею.)
Другие советы
Попробуйте следующее: System.Web.HttpContext.Current.Request.Url.AbsolutePath