Мне нужно найти URL-адрес веб-приложения данного сайта (скажем, у меня есть URL http://code/sites/java.. Учитывая URL-адрес этого семейства сайтов, мне нужен URL-адрес веб-приложения, в котором размещено это семейство сайтов. В этом случае это будет http://code.) Любой вклад будет оценен.
Если у вас есть объект SPWeb, используйте его свойство Site . Если у вас есть объект SPSite, используйте его свойство WebApplication . Если у вас их нет, создайте объект SPSite из этого URL.
Из объекта SPWebApplication используйте свойство AlternateUrls .
Из объекта SPAlternateUrlCollection получить SPAlternateUrl для нужной зоны.
Из объекта SPAlternateUrl получите фактический URL.
Причина, по которой вам нужно пройти через альтернативный набор URL, заключается в альтернативных сопоставлениях доступа, которые вы можете связать с веб-приложением . Например, все веб-приложения начинаются с «По умолчанию», которое может быть расширено до интрасети, экстрасети и т. Д.
Не забудьте использовать утилизацию с указанными выше объектами по мере необходимости.
Попробуйте это:
string path= HttpContext.Current.Request.Url.Authority
Вы получите URL-адрес веб-приложения.