【发布时间】:2013-04-26 11:00:26
【问题描述】:
编写 XPath 或 Sitecore 查询/快速查询来获取日期范围内的所有项目非常容易:
例如
/sitecore/content/*[@__created>='20130301T000000' and @__created<'20130427T000000']
但是,这种查询只查看项目的最新版本,因此似乎不可能找到实际的项目的 created 日期(不是版本的 created 日期)。
我可以编写一些 C# 代码来进行查询,但这需要先检索 我的数据库中每个项目的版本 1,然后我才能在 created 日期进行过滤。这将是令人难以置信的缓慢。
是否可以使用 XPath/Query notation/Fast?如果没有,有什么方法可以快速完成吗?
【问题讨论】:
-
为什么需要获取项目(版本 1)的创建日期(可能还有其他方式)?你确定这会在现场环境中工作吗? (据我所知,Web 数据库只有 1 个版本 - 最新版本)此外,您不能指望完全检索版本 1 - 它可能在某个时候已被删除。如果您确实找到了解决方案,请确保选择最低版本号。
-
@Trayek 这将用于维护我们的主数据库 - 实时网站不需要它。我们有各种运行脚本来帮助我们维护和分析我们的内容。最好调用最低版本号,而不是期望版本 1。谢谢。