首页 新闻 会员 周边

在MVC3中怎么实现分类列表啊

0
悬赏园豆:100 [已解决问题] 解决于 2012-05-12 21:18

问下,在MVC3中怎么实现分类列表啊。
有一个分类:
ID, Name, ParentID
1 分类一 0
2 分类二 0
3 分类三 1
4 分类四 1

需要实现功能:

<ul>
   <li> <a href="">分类一</a>
   <ul>
   <li>分类三</li>
   <li>分类四</li>
   <ul>
   </li>
   <li><a href="">分类二</a></li>
<ul>

在MVC3中用PartialViewResult怎么实现?

DZCMS的主页 DZCMS | 初学一级 | 园豆:5
提问于:2012-05-10 20:41
< >
分享
最佳答案
0

简单的方案(知道几级):

<ul>

@{

    var items = getitems();//此处获取所有数据

   foreach(var item in items.Where(o=>o.parentID==0))

   {

      <li><a href=''>@item.Name</a>

      @{

         var children = items.Where(o=>o.parentID==item.ID);

            if(children.Cunt() > 0)

            {

               <ul>

               @{

                 foreach(var child in children)

                    {

                         <li>@child.Name</li>

                    }

               }

               </ul>

            }

      }

      </li>

   }

}

</ul>

 

假如级别不确定,那么就最好使用递归方案:

list.cshtml:

@model IEnumerable

<ul>

@{

    foreach(var item in Model)

    {

        <li><a href=''>@item.Name</a>

        @{

                var children = item.GetChildren();

                if(children.Count()>0)

                {

                     @Html.Partial("list", children)

                }

        }

        </li>

    }

}

</ul>

收获园豆:100
无之无 | 大侠五级 |园豆:5095 | 2012-05-10 21:32

谢谢,用第一种就解决了。因为我这里暂时还只有二级,所以用第一种就解决了。

第二种我还没有试,等下我试一下。

DZCMS | 园豆:5 (初学一级) | 2012-05-11 21:26

递归的方法也已经试用成功。谢谢了。

DZCMS | 园豆:5 (初学一级) | 2012-05-12 21:19
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册