1

编写 XPath 或 Sitecore 查询/快速查询来获取日期范围内的所有项目非常容易:

例如

/sitecore/content/*[@__created>='20130301T000000' and @__created<'20130427T000000']

但是,这种查询只查看项目的最新版本,因此似乎不可能找到实际项目的 created日期(而不是版本的 created日期)。

我可以编写一些 C# 代码来进行查询,但这将涉及首先检索数据库中每个项目的第 1 版,然后才能按created日期进行过滤。这将是令人难以置信的缓慢。

是否可以使用 XPath/Query notation/Fast?如果没有,有没有一种方法可以快速完成?

4

1 回答 1

3

我想到了一些可行的方法:
创建一个新字段,您的所有项目都将获得该字段。然后在此字段中,在创建项目(不是版本)时,您在其中输入日期时间。
当版本被删除时,这很好,因为所有版本都将具有该字段,具有完全相同的值。

唯一的事情是,您必须运行一次脚本来循环遍历现有项目,以使用每个项目的正确值填充该字段。

然后,您可以像现在一样使用 XPath 查询。

于 2013-04-26T15:24:25.643 回答