Сценарий: у меня есть относительный URL-адрес приложения, например "~ / path / to / page.aspx? Query = string". Мне нужно программно создать веб-запрос на эту страницу и в настоящее время использовать WebRequest. Создайте
. Проблема в том, что WebRequest.Create требует полного URL-адреса, включая протокол / домен / порт и т. Д.
У меня есть доступ к текущему объекту Request.Url, но, похоже, нет простого способа получить только базовый URL сохраняя протокол (HTTP или HTTPS), а также любые номера портов, а также путь к приложению.
Я имею в виду всю информацию там, поэтому, если понадобится, я мог бы просто взять все части и объединить их, но кажется как будто это может быть подвержено ошибкам, и было бы здорово иметь что-то встроенное, хорошо протестированное для выполнения этой работы. Page.ResolveUrl
почти добрался до меня, но в нем отсутствует протокол и домен / порт.