SharePoint Webアプリケーションをプログラムで取得します
-
16-10-2019 - |
質問
SharePointでWebアプリケーションURLのみを取得する簡単な方法はありますか?たとえば、SpWebApplicationには、すべてのサイトコレクションのURLを返すが、すべてが含まれているルートURLのURLを返すような次のプロパティSPWeBApplication.sitesがあります。だから私はこれを返すことができました:
http:// thiswebapplication:8001/thissitecollection
しかし、これではありません:
http:// thiswebapplication:8001
簡単に取得する方法はありますか? http:// thiswebapplication 解析なしで、SharePointまたは組み込みのASP.NETオブジェクトを使用しますか?
解決
SharePoint Webアプリケーションは、異なるIIS Webサイトに拡張できるため、複数のURLを持つことができることを忘れないでください。 http://authoring.site.com と http://www.site.com.
デフォルトゾーンのURLを取得したい場合(拡張されたWebアプリを使用しているかどうか)、以下を使用できます。
webApp.GetResponseUri(SPUrlZone.Default);
他のヒント
SPWEBAPPLICATIONオブジェクトから、代替アクセスマッピングで指定されているURLのコレクションを提供するAlternateRlsにアクセスできます。
これは、PowerShellによっても簡単にアクセスできます。
$sites = Get-SPSite | Where-Object {$_.Url -like "*portal*"}
foreach ($site in $sites) {
Write-Host "Site is SPSite Url=$site"
}
所属していません sharepoint.stackexchange