SharePoint2010 SharePoint Fundation 服务器端对象模型之 枚举网站和网站集

基本对象模型任务:http://msdn.microsoft.com/zh-cn/library/ms412748

 

下面的示例枚举当前网站集中所有网站和列表的标题

代码如下:

        SPSite oSiteCollection = SPContext.Current.Site;  //获取当前site对象

            SPWebCollection collWebsite = oSiteCollection.AllWebs;  //获取站点下的所有 web



            for (int i = 0; i < collWebsite.Count; i++)

            {

                using (SPWeb oWebsite = collWebsite[i])

                {

                    SPListCollection collList = oWebsite.Lists;



                    for (int j = 0; j < collList.Count; j++)

                    {

                        Label1.Text += SPEncode.HtmlEncode(collWebsite[i].Title) + "   "

                            + SPEncode.HtmlEncode(collList[j].Title) + "<BR>";

                    }

                }

            }

效果如下:

image

 

下面例子,返回某个网站下的所有首层子网站的列表:

代码:

            SPSite oSiteCollection = SPContext.Current.Site;

            SPWeb web = new SPSite(oSiteCollection.Url).OpenWeb(); //获取本网站集的根网站

            SPWebCollection collWebsite = web.Webs;   //获取根网站下的所有首层网站



            foreach (SPWeb item in collWebsite)

            {

                Label1.Text += SPEncode.HtmlEncode(item.Title) + "<br>";

                item.Close();  //请求完毕后关闭site,释放资源 

              }

 

image

 

下面找出根网站集下首层子网站的url以及下面的列表名字

代码如下:

string url = @"http://win-s6to7hc4d0o:12345/default.aspx";

            SPWeb web = new SPSite(url).OpenWeb(); //根网站集的根网站

            SPWebCollection collWebsite = web.Webs;



            foreach (SPWeb oweb in collWebsite)

            {

                foreach (SPList olist in oweb.Lists)

                {

                    Label1.Text += oweb.Url + "  " + olist.Title + "<br>";

                }

                oweb.Close();

            }

image

 

获取所有网站集

代码:

            SPWebApplication webApplication = SPContext.Current.Site.WebApplication;

            SPSiteCollection siteCollections = webApplication.Sites;



            foreach (SPSite siteCollection in siteCollections)

            {

                Label1.Text += siteCollection.Url + "<BR>";



                siteCollection.Close();

            }

image

你可能感兴趣的:(SharePoint)