У меня есть следующие Sitecore запросы:Получить все дети и внуки элемента содержимого с заданным именем
- /Sitecore/содержание/Главная/Клубы // семнадцатом
- /Sitecore/содержание/Главная/Клубы // 20-е
Особое примечание. Я использую функцию осенних осей языка запросов Sitecore (//) с/sitecore/content/Главная/Клубы, являющиеся моим контекстом.
У меня есть содержание структурировано как таковой:
- /Sitecore/содержание/Главная/Клубы/Чикаго/17-
- /Sitecore/содержание/Главная/Клубы/Нью-Йорк/Центр/двадцатый
Когда я запускаю запросы 1 и 2 в XPath Builder, я получаю элементы контента 1 и 2; соответственно. Это то, чего я ожидаю. Однако, когда я запускаю те же запросы через API Sitecore, я получаю ошибку, не найденную в содержимом.
Следующие запросы будут работать с API Sitecore в, заметьте:
* /sitecore/content/home/clubs/*/17th
* /sitecore/content/home/clubs/*/*/20th
То, что я пытаюсь выполнить один запрос, где я могу получить как ребенок и внук элемента контента с определенным именем; запрос, как это:
/sitecore/content/Home/Clubs//{contentItemName}
Я знаю, что я мог бы просто попробовать
/sitecore/content/Home/Clubs/*/{contentItemName}
и возврат к
/sitecore/content/Home/Clubs/*/*/{contentItemName}
, если это не работает, но это, кажется, как взломать.
Есть ли все-таки я могу получить запрос, который я проверил в построителе XPath для работы с API Sitecore?
Try '/ Sitecore/содержание/главная/клубы // семнадцатом // *' - Это должно дать вам всех детей и внуков 17-го предмета (который, в свою очередь, является ребенком или внуком клубов). Если это не сработает, отправьте свой код на C#. – jammykam
не забудьте использовать быстрый запрос вместо [запроса] (http://sdn.sitecore.net/upload/sdn5/developer/using%20sitecore%20fast%20query/using%20sitecore%20fast%20query001.pdf) – Vikram