【ASP.NET MVC】使用动软(五)(13)

一、问题

前文完成的用户登录后的首页如下: 

【ASP.NET MVC】使用动软(五)(13)_第1张图片 

 后续账单管理、人员管理等功能页面都有相同的头部,左边和下边,唯一不同的右边内容部分,所以要解决重复设计的问题。

二、解决方法——使用布局页

在Views上右键添加新建项,选择布局页,名称可改:

【ASP.NET MVC】使用动软(五)(13)_第2张图片

拷贝相同的头部、左边、下边的HTML到布局页,需要加载的地方用RenderBody

【ASP.NET MVC】使用动软(五)(13)_第3张图片

 

在index页面中测试

修改index页面

【ASP.NET MVC】使用动软(五)(13)_第4张图片

登录后,跳转到index

 【ASP.NET MVC】使用动软(五)(13)_第5张图片

 PS:图片和时间不正常的是路径的问题,如修改布局页的js路径解决时间问题

【ASP.NET MVC】使用动软(五)(13)_第6张图片

 修改图片路径:【ASP.NET MVC】使用动软(五)(13)_第7张图片

 三、账单管理 页面的实现

首先 ,修改布局页中各项链接跳转

原来是静态页面方式,现改成“控制器+Action”

静态:

【ASP.NET MVC】使用动软(五)(13)_第8张图片

动态

【ASP.NET MVC】使用动软(五)(13)_第9张图片

以账单管理为例,用布局页实现功能:

在Home控制器中添加Action

       [IsLogin]
        public ActionResult billList()
        {
            Maticsoft.BLL.bill bll = new Maticsoft.BLL.bill();
            List list = bll.GetModelList("");
            ViewBag.list = list;
            return View();
        }

 [IsLogin] 见前文,取出数据表中所有账单信息,放入ViewBag。

右键该Action添加视图:

@{
    Layout = "~/Views/_LayoutPage1.cshtml";
    List list = ViewBag.list;
}


     
你现在所在的位置是: 账单管理页面
@foreach (Maticsoft.Model.bill item in list) { }
账单编码 商品名称 供应商 账单金额 是否付款 创建时间 操作
@item.id @item.billName @item.supplierid @item.money @item.zhifu @DateTime.Now.ToString() 查看 修改 删除

使用布局页,解决重复页面代码问题,根据ViewBag动态生成页面内容:

【ASP.NET MVC】使用动软(五)(13)_第10张图片

PS:基于超市模板WEB项目的相关资料可以联系作者获取(740803366 易老师)

你可能感兴趣的:(ASP.NET,MVC,asp.net,mvc,后端)