ASP.NET就不用介級(jí)了,MVC3是指模型-視圖-控制器 (MVC) 模式,是一項(xiàng)將 Web 應(yīng)用程序組件分開(kāi)的體系結(jié)構(gòu)設(shè)計(jì)原則。 通過(guò)分開(kāi)組件,您可以更好地控制應(yīng)用程序的單個(gè)部件,從而能夠更加輕松地開(kāi)發(fā)、修改和測(cè)試這些部件。
Razor是MVC3新引入的一種模板引擎,是一個(gè)干凈的、輕量級(jí)的、簡(jiǎn)單實(shí)用的視圖引擎。
實(shí)現(xiàn)二級(jí)列表循環(huán)的話(huà),不管是官方文檔,還是書(shū)本比較少提到,這里方維網(wǎng)絡(luò)通過(guò)示例來(lái)演示解決這個(gè)問(wèn)題。
第一步,Model類(lèi)如下
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類(lèi)如下
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類(lèi)如下
@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>
}
方法總結(jié),通過(guò)Model類(lèi)建一個(gè)IEnumerable子類(lèi)型 public IEnumerable<AdminPurview> sub { get; set; },然后通過(guò)嵌套foreach實(shí)現(xiàn)。
如沒(méi)特殊注明,文章均為方維網(wǎng)絡(luò)原創(chuàng),轉(zhuǎn)載請(qǐng)注明來(lái)自http://723918.com/news/1976.html