1

我在我的 C# 代码中使用了 Sitecore 快速查询来获取与条件匹配的项目和子项目。但是快速查询不会返回任何项目,尽管有。

我的快速查询如下所示; fast:/sitecore/content/...//*[@__Workflow state='{item id}']

这将不返回任何项目,但从fast:查询中删除将花费更多时间返回项目。

我尝试在查询路径中转义空格,如下所示,但它不起作用; fast:/sitecore/content/...//*[@#__Workflow state#='{item id}']

有什么方法可以使用快速查询过滤子项?

4

1 回答 1

0

我注意到您在查询中使用了您的点,这是不正确的。您可以使用 2 个点来选择父项,但在您的查询中选择父项/sitecore/content似乎有点奇怪。

看来您可以使用此查询:

fast:/sitecore/content//*[@__Workflow state='{item id}']

另请参阅本文档以了解语法和示例以及使用快速查询而不是普通查询的限制

编辑:

Sitecore 快速查询不考虑上下文语言(结果包括版本与任何语言的查询匹配的项目)。我刚刚在 Sitecore 的开发人员中心进行了快速测试,在我的情况下,它只产生了一个工作流状态设置为英语的项目,而不是我当前的上下文语言。这可能是您在您的情况下所经历的。

于 2013-02-20T12:52:26.060 回答