我有一个URL,我想检查它是否作为给定URL的子网站存在。

  • 我有一个URL= www.go.com
  • 我想检查是否=www.go.com 有URL= www.go.com/abx 还是不是

我有+1000个子网,我必须循环它们,没有快捷方式吗?

有帮助吗?

解决方案

您可以使用SuperMode和Unnie建议,您也可以选择使用以下代码:

using (SPSite site = new SPSite("http://www.go.com/"))    
{    
        using (SPWeb oWeb= site.OpenWeb())
        {
            SPWeb IsWebExists = oWeb.Webs.FirstOrDefault(x => x.Name == "abx");
            if (IsWebExists == null)
            {
                  //Your Code
            }
        }
}
.

其他提示

试试下面的代码:

using (SPSite site = new SPSite("http://www.go.com/"))
{
  using (SPWeb web = site.OpenWeb("abx"))
  {
     if (web.Exists)
         Console.WriteLine("exists");
     else
         Console.WriteLine("not exists");

  }
}

只要确保里面 site.OpenWeb, ,您提供web的站点相对url

您可以尝试以下

string serverUrl = "http://myserver";
string siteUrl = "/sites/SiteCollection";
string subSiteUrl = "This Subsite Does Not Exist";
using (SPSite site = new SPSite(serverUrl + siteUrl))
{
    using (SPWeb web = site.OpenWeb(subSiteUrl))
    {
        if (web.Exists)
        {
            // do work with the web...
            Console.WriteLine(site.Url);
            Console.WriteLine(web.Url);
        }
    }
}
.

许可以下: CC-BY-SA归因
scroll top