我有一个包含 18 个网站集的 Web 应用程序,这些网站集有一个文档库,每个都命名为ApplicantDocs
.
现在我的要求是我需要在顶级站点中一次显示所有 18 个站点集合中登录用户的所有文档作为 Web 部件。
因此,除了属于他的文档之外,他没有看到任何其他文档。
对于单个站点集合,我可以使用SPQuery
类并显示。如何实现从所有网站集中显示?
我有一个包含 18 个网站集的 Web 应用程序,这些网站集有一个文档库,每个都命名为ApplicantDocs
.
现在我的要求是我需要在顶级站点中一次显示所有 18 个站点集合中登录用户的所有文档作为 Web 部件。
因此,除了属于他的文档之外,他没有看到任何其他文档。
对于单个站点集合,我可以使用SPQuery
类并显示。如何实现从所有网站集中显示?
你不能那么容易。SharePoint 中的正常边界是网站集或 Web 应用程序。您正在谈论多个网站集,因此必须求助于使用自定义内容或 SharePoint 搜索。
您没有提到的一件事:SPSiteDataQuery
它可以查询同一网站集中的多个网站,但不能跨多个网站集查询。- http://www.codeproject.com/Tips/401818/SharePoint-2010-SPSiteDataQuery-with-Example
- http://msdn.microsoft.com/en-us/library/microsoft.sharepoint.spsitedataquery.aspx
自定义内容:
您必须遍历当前 Web 应用程序中的所有网站集并查找ApplicantDocs
库。不要忘记处理您正在查询的每个网站/站点!
SharePoint 搜索:
如果您的搜索设置正确,您只需实现一个搜索 Web 部件,它为用户查询所有网站集以查找文档,现在您只需将搜索限制在名为ApplicantDocs
.