【问题标题】:SharePoint 2010: efficient union query across site collections?SharePoint 2010:跨网站集的高效联合查询?
【发布时间】:2010-10-20 11:53:06
【问题描述】:

在 SharePoint 2010 中,我想在一个 SiteCollection 中创建一个列表,用于查询来自其他几个具有公共字段的 SiteCollections 的数据:

这是否可能,如果可以,是否可以有效地完成?

当前提议的解决方案包括在我们要查询的每个 SiteCollections 上设置 EventReceivers,并在每次更新 SiteCollections 或已添加数据。

有没有更好的方法来实现我们想要实现的目标?

【问题讨论】:

  • 您使用的是什么版本的共享点?
  • @brian - 哦! 2010,我更新了问题!

标签: sharepoint union sitecollection


【解决方案1】:

这可能是我会做的。即使您在同一个网站集中,我也想不出一种将项目聚合并复制到另一个列表中的方法。您可以通过事件接收器推送项目或通过作业定义拉取项目。

我能想到的唯一其他事情是新的分类字段和术语集。但这适用于基于文本的选择字段。我认为它不适用于您的示例中所示的多列项目。

【讨论】:

    【解决方案2】:

    不可能开箱即用,但您可以从 Lightning 工具中购买 Lightning Conductor Web 部件。它的工作方式类似于内容查询 Web 部件,但它可以跨网站集工作。

    它与 Sharepoint 2007 和 2010 兼容。

    http://www.lightningtools.com/pages/lightning-conductor-web-part.aspx http://www.lightningtools.com/blog/archive/2010/04/29/sharepoint-2010-and-the-lightning-conductor-web-part.aspx

    至于它的效率,我不确定,因为我只将它用于小数据集合。

    【讨论】:

      【解决方案3】:

      每当我考虑在网站集中汇总内容时,我都会考虑利用(如果可能的话) 1) 托管元数据服务(分类和共享内容类型)
      2)搜索(利用搜索范围等) 3) 某种 web 部件来显示页面上的数据。 效率是您关心的问题之一,搜索是您的最佳选择!没有什么能比得上它的性能!

      我遇到了一个很好的解决方案(扩展内容查询 Web 部件以跨网站集和外部源聚合数据),它可能会给您一些指导:http://www.msteched.com/2009/NorthAmerica/OFC405

      虽然搜索有其局限性(结果的准确性取决于上次索引操作的运行时间)。如果这让您感到困扰,您可能最终会按照此处的建议手动迭代您的网站集列表:http://social.msdn.microsoft.com/Forums/en-US/sharepointdevelopment/thread/d271da25-57f4-4f59-a34d-fd06bc4c8ce6

      另一个答案中建议的闪电网络部件可能非常适合您。我建议对它进行评估(比如它在内部的运作方式、权限、附加配置、效率、缓存、对显示的控制等)。

      【讨论】:

        猜你喜欢
        • 2011-05-10
        • 2011-03-16
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多