无限菜单递归函数C#
我想知道如何创建一个递归界面,我有一组菜单,这些菜单是有孩子的父母等等,因为没有最大数量的孩子想找到解决这个问题的方法,我把我在ASP.NET MVC代码和C#无限菜单递归函数C#,c#,asp.net-mvc,html,C#,Asp.net Mvc,Html,我想知道如何创建一个递归界面,我有一组菜单,这些菜单是有孩子的父母等等,因为没有最大数量的孩子想找到解决这个问题的方法,我把我在ASP.NET MVC代码和C# @foreach(opcoesPai中的var opcaoPai) { var filhos=opcaoPai.OpcaoMenuFilhosSet.OrderBy(o=>o.ordemmenus); @if(filhos.Any()) { } 其他的 { @DisplayFor(modelItem=>opcaoPai.Titulo)
@foreach(opcoesPai中的var opcaoPai)
{
var filhos=opcaoPai.OpcaoMenuFilhosSet.OrderBy(o=>o.ordemmenus);
@if(filhos.Any())
{
}
其他的
{
@DisplayFor(modelItem=>opcaoPai.Titulo)
}
@foreach(var filho in filhos)
{
@DisplayFor(modeleItem=>filho.Titulo)
}
}
假设您有以下结构:
public class Node {
List<Node> Filhos {get;set;}
}
假设您有以下结构:
public class Node {
List<Node> Filhos {get;set;}
}
它从数据库接收数据,所以我需要让它工作,我不知道也不明白如何工作,因为我需要它是无限的,带有“RenderSomething”的解决方案是递归的和不确定的。你是通过一个简单的表接收数据,还是像EF Lazy Loading那样通过一系列的child接收数据?老实说,这是我的职责,我不知道它是如何工作的,但我从数据库的查询中接收数据,而不是作为一个简单的表接收数据,我想你有这样一个:
var filhos=opcaoppai.OpcaoMenuFilhosSet.OrderBy(o=>o.ordermenus)代码>然后foreach(在filhos中为var filho)
。能给我一份filho对象的filhos列表吗?比如var filhos\u filhos=filho.OpcaoMenuFilhosSet.OrderBy(o=>o.ordemmenus)代码>?如果这是可能的,那么助手很容易实现。如果不是,则取决于opcaoPai和filhos的结构。你能用opcaoPai和filhos的详细描述来更新你的问题吗?它从数据库接收数据,所以我需要让它工作,我不知道也不明白如何工作,因为我需要它是无限的“RenderSomething”的解决方案是递归的和不确定的。你是通过一个简单的表接收数据,还是像EF Lazy Loading那样通过一系列的child接收数据?老实说,这是我的职责,我不知道它是如何工作的,但我从数据库的查询中接收数据,而不是作为一个简单的表接收数据,我想你有这样一个:var filhos=opcaoppai.OpcaoMenuFilhosSet.OrderBy(o=>o.ordermenus)代码>然后foreach(在filhos中为var filho)
。能给我一份filho对象的filhos列表吗?比如var filhos\u filhos=filho.OpcaoMenuFilhosSet.OrderBy(o=>o.ordemmenus)代码>?如果这是可能的,那么助手很容易实现。如果不是,则取决于opcaoPai和filhos的结构。您能用opcaoPai和filhos的详细描述更新您的问题吗?请参阅使用HtmlHelper
扩展方法的示例。请参阅使用HtmlHelper
扩展方法的示例。