【发布时间】:2009-03-13 15:27:26
【问题描述】:
我正在为我的网站创建一个菜单。它有一个层次结构。
这就是我想要的:
- 曾祖父母
- 祖父母
- 父母
- 兄弟姐妹1
- 兄弟姐妹2
- 兄弟姐妹3
- 自我
- 孩子1
- 孩子2
- 孩子3
- 父母
- 祖父母
HTML:
<ul>
<li><a href="/389">Great Grandparent</a>
<ul>
<li><a href="/456">Grandparent</a>
<ul>
<li><a href="/389">Parent</a>
<ul>
<li><a href="/986">Sibling1</a></li>
<li><a href="/983">Sibling2</a></li>
<li><a href="/418">Sibling3</a></li>
<li><strong>Self</strong>
<ul>
<li><a href="/310">Child1</a></li>
<li><a href="/953">Child2</a></li>
<li><a href="/927">Child3</a></li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
</li>
</ul>
这是我的 ASPX 页面中的代码。这有效:
<% For Each Ancestor As Node In ViewData("Ancestors")%>
<ul>
<li><%=Html.RouteLink(Html.Encode(Ancestor.Name), "IdOnly", New With {.id = Ancestor.Id})%>
<% Next%>
<ul>
<% For Each Sibling As Node In ViewData("Siblings")%>
<li><%=Html.RouteLink(Html.Encode(Sibling.Name), "IdOnly", New With {.id = Sibling.Id})%></li>
<% Next%>
<li><strong><%=Html.Encode(Model.Name)%></strong>
<% If Model.Children.Count > 0 Then%>
<ul>
<% For Each Child As Node In ViewData("Children")%>
<li><%=Html.RouteLink(Html.Encode(Child.Name), "IdOnly", New With {.id = Child.Id})%></li>
<% Next%>
</ul>
<% End If%>
</li>
</ul>
<% For Each Ancestor As Node In ViewData("Ancestors")%>
</li>
</ul>
<% Next%>
那个 ASPX 页面似乎很难阅读。我该如何清理它?
【问题讨论】:
标签: asp.net-mvc