如何从输入URL获取有效的SharePoint Web

时间:2014-04-16 12:15:26

标签: sharepoint sharepoint-2010

使用SharePoint 2010 Visual Studio工作流,该工作流将使用Web服务将数据从本地服务器场复制到远程服务器场。

我在尝试解析输入网址以获取远程服务器场上的相应网络时遇到了问题。

示例输入:

https://test2.remotefarm.com/randomweb/webweb/Shared%20Documents/Forms/AllItems.aspx
https://test3.remotefarm.com/

我无法控制输入内容,因此它可能是根网络应用程序或五个网络深度。

一旦我有了有效的网址,我就会附加一个网络服务端点。

编辑 - 这就是我最终使用

Uri fileUrl = new Uri("https://test2.remotefarm.com/randomweb/webweb/Shared%20Documents/Forms/AllItems.aspx"); 

        //Websref is a Web Reference pointing to \webs.aspx
        websRef.Webs webs1 = new websRef.Webs();
        webs1.Url = "https://" + fileUrl.Authority + "/" + sWebsSuffix;
        webs1.UseDefaultCredentials = true;

        string strWebUrl = webs1.WebUrlFromPageUrl(fileUrl.ToString());

1 个答案:

答案 0 :(得分:0)

您可以使用SPSite从URL获取网站集,然后使用OpenWeb()获取Web应用程序。例如:

using (SPSite siteCollection = new SPSite("https://test2.remotefarm.com/randomweb/webweb/Shared%20Documents/Forms/AllItems.aspx"))
{
SPWeb myWeb = siteCollection.OpenWeb();
//do stuff with myWeb here

}