Question

J'ai une URL et je souhaite vérifier si elle existe en tant que sous-site pour une URL donnée.

  • J'ai une URL = www.go.com
  • Je veux vérifier si = www.go.com a une URL = www.go.com/abx ou non

J'ai +1 000 sous-sites Web, dois-je tous les boucler, pas de raccourci ?

Était-ce utile?

La solution

Vous pouvez suivre ce que Supermode et Unnie ont suggéré, vous pouvez également choisir d'utiliser le code ci-dessous :

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
            }
        }
}

Autres conseils

Essayez le code ci-dessous :

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");

  }
}

Assurez-vous simplement qu'à l'intérieur site.OpenWeb, vous fournissez l'url relative du site Web

Vous pouvez essayer ce qui suit

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);
        }
    }
}
Licencié sous: CC-BY-SA avec attribution
Non affilié à sharepoint.stackexchange
scroll top