锐客网

ASP.NET4.0+MVC3+Razor如何实现二级列表循环

发表日期:2019-03-05 作者:小锐 浏览次数:

ASP.NET就不用介级了,MVC3是指模型-视图-控制器 (MVC) 模式,是一项将 Web 应用程序组件分开的体系结构设计原则。通过分开组件,您可以更好地控制应用程序的单个部件,从而能够更加轻松地开发、修改和测试这些部件。

Razor是MVC3新引入的一种模板引擎,是一个干净的、轻量级的、简单实用的视图引擎。

实现二级列表循环的话,不管是官方文档,还是书本比较少提到,这里锐客网络通过示例来演示解决这个问题。

第一步,Model类如下

namespace test.Admin.Models{ public class AdminPurview { [Key] public int purview_id { get; set; } public string purview_name { get; set; } public int parent_id { get; set; } public int order_id { get; set; } public byte is_enable { get; set; } public IEnumerable<AdminPurview> sub { get; set; } }}

第二步,Controllers类如下

public ActionResult Create() { var purview=db.AdminPurview.Where(s => s.parent_id.Equals(0)).ToList(); foreach (var p in purview) { p.sub=db.AdminPurview.Where(s => s.parent_id.Equals(p.purview_id)).ToList(); } ViewBag.purview = purview; return View(); }

第三步,View类如下

@foreach (var p in ViewBag.purview) { <fieldset> <legend> <input type="checkbox" value="@p.purview_id" /><label for="purview@(p.purview_id)">@p.purview_name</label> </legend> <dl> @foreach(var p1 in @p.sub) { <dd><input type="checkbox" value="@p1.purview_id" /><label for="purview@(p1.purview_id)" >@p.purview_name</label></dd> } </dl> </fieldset> }

方法总结,通过Model类建一个IEnumerable子类型 public IEnumerable<AdminPurview> sub { get; set; },然后通过嵌套foreach实现。

如没特殊注明,文章均为锐客网原创,转载请注明来自  https://www.wangzhan500.com/news/3298.html

标签:
锐客网客服

锐客网咨询热线 咨询热线

13798391694

0755-23772759

在线咨询
锐客网微信扫码咨询

微信扫码咨询

锐客网QQ咨询 QQ咨询 锐客网QQ咨询 邮件咨询
返回顶部 返回顶部