7

Is there an easy way to get just the web application URL in SharePoint, for example, SPWEbApplication has the following property spwebapplication.sites that would return URL's of all the site collections, but not of the root URL that they all contain. So I could return this:

http://thiswebapplication:8001/thissitecollection

but not this:

http://thiswebapplication:8001

Is there an easy way to get http://thiswebapplication without any parsing, using the SharePoint or built in ASP.NET objects?

13

Remember that SharePoint web applications can have multiple URLs since they can be extended onto different IIS websites e.g. http://authoring.site.com and http://www.site.com.

If you're looking to get the URL for the default zone (either with a web app which has been extended or not), you can use:

webApp.GetResponseUri(SPUrlZone.Default);
1

From the SPWebApplication object you have access to AlternateURLs which will provide the collection of URLs as specified in the Alternate Access Mappings.

-1

SPSite.Url

This is also easily accessed by PowerShell;

$sites = Get-SPSite | Where-Object {$_.Url -like "*portal*"}
 foreach ($site in $sites) {
  Write-Host "Site is SPSite Url=$site"
}
  • in Powershell, it's abstracted enough that the SPWebApplication object (thus it would seem, not the same SPWebApplication object used in .net api) actually has a Url property – Code Jockey Nov 12 '15 at 18:33

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.