Domanda

C'è un modo semplice per ottenere solo l'URL dell'applicazione Web in SharePoint, ad esempio, SPWebApplication ha le seguenti proprietà spwebapplication.sites che torneranno URL di tutte le raccolte siti, ma non di dell'URL radice che essi contengono tutti. Così ho potuto restituire questo:

http: // thiswebapplication: 8001 / thissitecollection

, ma non in questo modo:

http: // thiswebapplication: 8001

C'è un modo semplice per ottenere http: // thiswebapplication senza alcuna analisi, utilizzando lo SharePoint o costruito in oggetti ASP.NET ?

È stato utile?

Soluzione

Ricordate che le applicazioni Web di SharePoint possono avere più URL in quanto possono essere estesi su diversi siti web IIS per esempio http://authoring.site.com e http: // www.site.com .

Se stai cercando di ottenere l'URL per la zona di default (o con una web app che è stato esteso o no), è possibile utilizzare:

webApp.GetResponseUri(SPUrlZone.Default);

Altri suggerimenti

Dall'oggetto SPWebApplication si ha accesso a AlternateURLs che fornirà la raccolta di URL, come specificato nelle mapping di accesso alternativo.

SPSite.Url

Questa è anche facilmente raggiungibile in PowerShell;

$sites = Get-SPSite | Where-Object {$_.Url -like "*portal*"}
 foreach ($site in $sites) {
  Write-Host "Site is SPSite Url=$site"
}
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a sharepoint.stackexchange
scroll top