【发布时间】:2010-10-30 20:38:22
【问题描述】:
我有一个用于类别内一组项目的嵌套数据对象。每个类别都可以包含子类别,并且子类别的深度没有限制。 (文件系统会有类似的结构。)它看起来像这样:
class category
{
public int id;
public string name;
public IQueryable<category> categories;
public IQueryable<item> items;
}
class item
{
public int id;
public string name;
}
我将一个类别列表作为IQueryable<category> 传递给我的视图。我想将类别输出为一组嵌套的无序列表 (<ul>) 块。我可以嵌套 foreach 循环,但是子类别的深度将受到嵌套 foreach 块的数量的限制。在 WinForms 中,我使用递归完成了类似的处理来填充 TreeView,但我还没有看到任何在 ASPX MVC 视图中使用递归的示例。
可以在 ASPX 视图中进行递归吗?是否还有其他包含递归视图输出的视图引擎?
【问题讨论】:
-
当我写这个问题时,我想我没有理解
IQueryable和IEnumerable之间的区别。我现在使用IEnumerable,因为视图没有进行任何查询,应该只枚举数据。
标签: asp.net-mvc recursion