Проверьте, является ли URL-адрес допустимым SPWeb на SPSite

sharepoint.stackexchange https://sharepoint.stackexchange.com/questions/105688

  •  29-09-2020
  •  | 
  •  

Вопрос

У меня есть 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, вы указываете относительный 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 с атрибуция
Не связан с sharepoint.stackexchange
scroll top