В ASP.NET что это самый быстрый способ, чтобы получить базовый URL-адрес для запроса?


Есть ли быстрый способ получить схему, хост, порт (только если не 80) и путь приложения в ASP.NET?

Насколько я знаю, мне нужно собрать следующие части:

  • запрос.Url-адрес.Схема
  • запрос.Url-адрес.SchemeDelimiter
  • запрос.Url-адрес.Полномочия (хотя это, вероятно, всегда будет включать порт, даже когда он равен 80)
  • запрос.ApplicationPath

Разве для этого не существует простого свойства?

1 9

1 ответ:

Это должно сработать:

Request.Url.GetLeftPart(UriPartial.Authority) + Request.ApplicationPath
Обратите внимание, что это может заканчиваться или не заканчиваться символом "/" в зависимости от того, размещено ли ваше приложение в корневом каталоге сайта или в подкаталоге.