Kentico 如何在肯蒂科嵌套多个CMSRepeater?

Kentico 如何在肯蒂科嵌套多个CMSRepeater?,kentico,Kentico,使用Kentico CMS框架(版本7),如何嵌套多个CMS中继器 我已经尝试了以下绑定父母的方法,但是你如何让孩子绑定呢 <cms:CMSRepeater ID="repProducts" runat="server" ClassNames="cms.product" OrderBy="NodeLevel,NodeOrder" SelectOnlyPublished="true" MaxRelativeLevel="1"> <ItemTemplate> &

使用Kentico CMS框架(版本7),如何嵌套多个CMS中继器

我已经尝试了以下绑定父母的方法,但是你如何让孩子绑定呢

<cms:CMSRepeater ID="repProducts" runat="server" ClassNames="cms.product" OrderBy="NodeLevel,NodeOrder" SelectOnlyPublished="true"  MaxRelativeLevel="1">
<ItemTemplate>
      <%# Eval("DocumentName")%>
      <ul>
            <li>
                     <cms:CMSRepeater ID="repProductsNested" runat="server" ClassNames="cms.product" OrderBy="NodeLevel,NodeOrder" SelectOnlyPublished="true"  MaxRelativeLevel="1" Path="./%">
                     <HeaderTemplate>
                            <ul>
                     </HeaderTemplate>
                     <ItemTemplate>
                            <li><%# Eval("DocumentName")%>
                     </ItemTemplate>
                     </cms:CMSRepeater>
                     <FooterTemplate>
                            </ul>
                     </FooterTemplate>
            </li>
      </ul>
</ItemTemplate>
</cms:CMSRepeater>


我认为您的第一个中继器缺少两个重要属性,即DelayedLoading=“true”NestedControlsID=“repProductsTested”,因此您的代码应如下所示:

<cms:CMSRepeater ID="repProducts" runat="server" ClassNames="cms.product" OrderBy="NodeLevel,NodeOrder" SelectOnlyPublished="true"  MaxRelativeLevel="1" NestedControlsID="repProductsNested" DelayedLoading="true">
<ItemTemplate>
      <%# Eval("DocumentName")%>
      <ul>
            <li>
                     <cms:CMSRepeater ID="repProductsNested" runat="server" ClassNames="cms.product" OrderBy="NodeLevel,NodeOrder" SelectOnlyPublished="true"  MaxRelativeLevel="1" Path="./%">
                     <HeaderTemplate>
                            <ul>
                     </HeaderTemplate>
                     <ItemTemplate>
                            <li><%# Eval("DocumentName")%>
                     </ItemTemplate>
                     </cms:CMSRepeater>
                     <FooterTemplate>
                            </ul>
                     </FooterTemplate>
            </li>
      </ul>
</ItemTemplate>
</cms:CMSRepeater>


作为一个补充,我强烈建议不要使用嵌套中继器,除非您确实需要,或者您的数据集相当小。我们有一个大的下拉菜单,跨越三个层次,在我们的一个网站上,就是这样工作的。该站点遇到性能问题,在调查原因后,发现菜单是罪魁祸首,因为它有许多数据绑定。将其更改为使用分层查看器修复了此问题,因为它返回一个可通过分层转换操作的数据集


我认为,只要有可能使用嵌套的中继器,您就应该研究层次转换。

感谢您使用您提到的内容,我成功地完成了大部分工作,现在我只需要做一些编辑:-)