我有一个包含 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.