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

2023-03-21    分类: 网站建设

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" name="purview" id="purview@(p.purview_id)" onclick="check('purview@(p.purview_id)',this)" 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" name="purview" class="purview@(p.purview_id)" id="purview@(p1.purview_id)" onclick="check('purview',this)" 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实现。

网站题目:ASP.NET4.0+MVC3+Razor如何实现二级列表循环
文章路径:/news37/246187.html

成都网站建设公司_创新互联,为您提供网站营销电子商务定制开发网站维护虚拟主机品牌网站设计

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

h5响应式网站建设