【问题标题】:SharePoint CSOMSharePoint CSOM
【发布时间】:2015-06-15 14:04:42
【问题描述】:

想要构建一个应用程序(使用 SharePoint CSOM)以从 SharePoint 场中获取所有用户和 SharePoint 组。用户和组需要从场中可能存在的所有站点集合中获取。浏览文档后,站点类https://msdn.microsoft.com/en-us/library/microsoft.sharepoint.client.site_methods(v=office.14).aspx 似乎只代表一个“单个”站点集合。这很棒。但是,在应用程序可以为每个 SiteCollection 创建站点对象之前,应用程序需要确定场中存在的所有 SiteCollection。是否有一个类/方法可以检索 SharPoint 农场上的所有 SiteCollection?

【问题讨论】:

    标签: sharepoint sharepoint-2010


    【解决方案1】:

    如果启用了搜索,则可以通过使用搜索结果来做到这一点:

    KeywordQuery query = new KeywordQuery(site);
                query.QueryText = string.Format("Path:{0} AND ContentClass:STS_Site", webAppURL);
                query.RowLimit = 500;//max row limit is 500 for KeywordQuery
                query.ResultsProvider = SearchProvider.Default;
                query.EnableStemming = true;
                query.TrimDuplicates = false;
                query.AuthenticationType = QueryAuthenticationType.PluggableAuthenticatedQuery;
                query.KeywordInclusion = KeywordInclusion.AllKeywords;
                SearchExecutor executor = new SearchExecutor();
                ResultTableCollection resultTableCollection = executor.ExecuteQuery(query);
                var resultTables = resultTableCollection.Filter("TableType", KnownTableTypes.RelevantResults);
                var resultTable = resultTables.FirstOrDefault();
    

    来源:https://sharepoint.stackexchange.com/questions/133073/get-all-site-collections-with-csom

    (顺便说一句,使用 SharePoint Online 更容易,您可以使用 SPOSitePropertiesEnumerable 类。 SharePoint CSOM, retrieving site collections. Limited to 300?)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-10-22
      • 2023-03-19
      • 1970-01-01
      • 2021-02-27
      • 2015-10-11
      • 1970-01-01
      • 2015-03-28
      • 2016-05-15
      相关资源
      最近更新 更多