我想创建所有子部门(所有级别)的列表,以及有关它们中的每一个的详细信息。 最简单的方法是进行递归函数,但我有很多子站点(约600),我想要更有效的方式。

是spsitedataquery在这种情况下可能适用吗?

有帮助吗?

解决方案

我没有使用spsitedataquery,但我使用powershell从SharePoint Web应用程序返回所有子物的列表(它返回每个的标题,URL和ID)并将其保存到CSV文件:

get-spwebapplication“http:// webappname /”|get-spsite -limit全部|get-spweb -limit所有|选择标题,URL,ID |Export-CSV C:\ IterateAlelSitesSubsites.ps1.csv -notypeinformation

其他提示

我以前研究过这样做。在我的情况下,我需要在所有网站集合中获取所有网站的列表,甚至在多个农场之间。我最终创建了自己的定时器作业,每小时一次才能更新我存储该结构的数据库。此外,每天晚上我都会跑到另一个定时器作业,以存储在有权阅读哪个站点的其他表中。这样,我可以轻松创建一个“我的团队站点”WebPart,它快速显示用户可以访问的所有站点。使用此设置和一些列索引我能够让我的WebPart在2秒内运行,有时显示成千上万的团队站点。

许可以下: CC-BY-SA归因
scroll top