使用Umbraco中的Razor的多级下拉菜单

使用Umbraco中的Razor的多级下拉菜单,razor,umbraco,Razor,Umbraco,我正在尝试建立一个多层次的dropcrowd菜单,我使用的是umbraco cms 我要找的是: <div id="TopMenu"> <ul class="myMenu"> <li><a href="#">Home</a></li> <li><a href="#">About Us</a></li>

我正在尝试建立一个多层次的dropcrowd菜单,我使用的是umbraco cms

我要找的是:

<div id="TopMenu"> 
        <ul class="myMenu"> 
            <li><a href="#">Home</a></li> 
            <li><a href="#">About Us</a></li> 
            <li><a href="#">Products</a>
                    <ul>
                        <li><a href="#">Products1</a></li>
                        <li><a href="#">Products2</a></li>
                        <li><a href="#">Products3</a></li>
                    </ul>
                    </li> 
            <li><a href="#">ContactUs</a></li> 

        </ul> 
    </div><!--TopMenu--> 

在Umbraco中,我创建了cshtml以使其正常工作:

<ul class="myMenu">
<li><a href="/">Home</a> </li>
@foreach (var page in @Model.AncestorOrSelf(1).Children)
{
    string style = "";
    if (1 == 1) { style = "class=\"current\""; }
    <li><a href="@page.Url" @style>@page.Name</a></li>


}
  • @foreach(@Model.AncestorOrSelf(1.Children)中的变量页) { 字符串样式=”; 如果(1==1){style=“class=\”当前\\;}
  • }

上面的razor语法对于顶级的AncestorOrSelf(1)很好,但是我需要AncestorOrSelf(2)产品的子节点,有人知道如何实现吗


Thanx

这是我目前在项目中使用的razor代码:

@foreach (var page in Model.AncestorOrSelf(1).Children.Where("Visible"))
{
   <li><a href="@page.Url">@page.Name</a>
   if (page.Children.Where("Visible").Count() > 0)
   {
      <ul>
         @foreach (var subpage in page.Children.Where("Visible"))
         {
            <li><a href="@subpage.Url">@subpage.Name</a></li>
         }
      </ul>
   }
   </li>
}
@foreach(Model.antestorself(1.Children.Where(“可见”)中的变量页)
{
  • if(page.Children.Where(“可见”).Count()>0) {
      @foreach(page.Children.Where(“可见”)中的var子页面) {
    • }
    }
  • }

    内部循环通过外部循环节点的所有子循环。

    +1是的,除了有效的html之外,您的
    li
    应该在最后一个
    }
    之前关闭。如果您使用umbracoNaviHide,您可能希望迭代
    …子循环。在哪里(“可见”)
    这个答案对我有效,但我相信if前面有一个@missing(…@if(page.Children.Where…)我也这么认为@Migs,但Visual Studio一直在抱怨,直到我将其删除。工作得很有魅力!谢谢你!老兄!:D