如何在Web应用程序中获取所有网站集

时间:2010-12-30 10:53:28

标签: sharepoint sharepoint-2010 spsite

我想在我的网络应用程序下列出所有网站集;目的是列出用户创建的所有mysite。

就像那样:

/members/sites/sqladmin
/members/sites/sqluser
/members/sites/sqluser1
/members/sites/sqluser2
/members/sites/user1

4 个答案:

答案 0 :(得分:7)

为了访问给定Web应用程序中的所有网站集,很自然地,SPWebApplication.Sites属性。要访问特定的Web应用程序,您可以使用以下代码:

SPWebApplication webApp = SPWebApplication.Lookup(new Uri("http://my-web-app-url:80/"));

(也见MSDN here)。

答案 1 :(得分:2)

使用SPWebApplication.Sites属性。

答案 2 :(得分:0)

在管理中心主页上,单击“应用程序管理”。

在“应用程序管理”页面的“网站集”部分中,单击“查看所有网站集”。

“网站集列表”页面列出了Web应用程序中的所有网站集。

答案 3 :(得分:0)

使用下面的代码以编程方式获取Web应用程序的所有网站集。 url parametter = web application url。

        public DataTable GetAllSiteCollections(string url)
        {
            DataTable dt = new DataTable();
            dt.Columns.Add("URL");
            dt.Columns.Add("Name");
            SPSecurity.RunWithElevatedPrivileges(delegate()
            {
                SPWebApplication webApplication = SPWebApplication.Lookup(new Uri(url));
                foreach (SPSite site in webApplication.Sites)
                {
                    dt.Rows.Add(new object[] { site.Url, site.Url });

                }

            });

            return dt;
        }