एक्सपैथ बिल्डर का उपयोग करके स्टार्टर किट में, मैं होम आइटम के अंतर्गत 'साइट अनुभाग' टेम्पलेट से प्राप्त सभी आइटम कैसे प्राप्त करूं?साइटकोर क्वेरी का उपयोग कर आइटम पुनर्प्राप्त करें
जब मैं निम्नलिखित चलाएँ:
/sitecore/content/home/*[@@templatekey='product section']
एक आइटम /sitecore/content/Home/Products
जो समझ में आता है लौटा दिया जाता है, फिर भी, निम्नलिखित कुछ भी वापस नहीं करता है:
/sitecore/content/home/*[@@templatekey='site section']
मुझे क्या करना कोशिश कर रहा हूँ है xslt के बजाय asp.net वेब नियंत्रण का उपयोग कर 'साइट अनुभाग' टेम्पलेट का उत्तराधिकारी आइटम से मेनू बनाएं।
कोई विचार?
धन्यवाद, तारेक
** अद्यतन
सवाल बारे में अधिक जानकारी प्रदान करें:
आइटम /sitecore/content/Home/Products
टेम्पलेट /sitecore/templates/Starter Kit/Site Sections/Product Section
जो /sitecore/templates/Starter Kit/Item Types/Site Section
का आधार टेम्पलेट है, तो है मैं होम के तहत उत्पाद और संदर्भ (उत्पाद के समान) आइटम चाहते हैं, मैं निम्नलिखित क्वेरी चलाऊंगा :
/sitecore/content/home/*[@@templatekey='product section' or @@templatekey='references section']
वहाँ एक रास्ता होम कि आधार टेम्पलेट के रूप में साइट धारा है के तहत आइटम प्राप्त करने के लिए है। Xslt में एक विधि sc:GetItemsOfType('site section',$home/item)
है जो यह करता है।
** उत्तर
var homeItem = Sitecore.Context.Database.GetItem(Sitecore.Context.Site.StartPath);
var siteSectionItems = new List<Item>();
foreach (Item item in homeItem.Children)
{
var itemTemplate = TemplateManager.GetTemplate(item);
if (itemTemplate.InheritsFrom("Site Section"))
siteSectionItems.Add(item);
}
धन्यवाद, विवरण की सराहना करते हैं, लेकिन कोड क्वेरी चलाने के समान ही है:/sitecore/सामग्री/घर/* [@@ templatekey = 'उत्पाद खंड'] यह उठा नहीं कर रहा है उत्पाद खंड का आधार टेम्पलेट जो साइट अनुभाग होना चाहिए। –