• asp.net mvc 4 高级编程学习笔记:第三章 视图(2)


    页面布局

     asp.net MVC中提供了布局的支持,默认情况下才布局文件保存到 /View/Shared/目录下的_Layout.cshtml,View目录有个_ViewStart.cshtml文件,里边的代码

    @{
        Layout = "~/Views/Shared/_Layout.cshtml";
    }

    指明了此目录下的默认布局文件是谁。可以将此代码添加到具体的View文件中来修改套用的模板页。

    可以将_ViewStart.cshtml文件创建到某个子目录中,用来设定此目录中所有视图的默认母版页。

    在此布局文件中,通过 @RenderBody() 代码嵌入内容页的内容。

    在此页面中还支持Section(区域),在模板页中通过 @RenderSection("scripts", required: false) 嵌入视图中所定义的区域内容。

    可以指定View中区域是否必须定义,View中通过如下代码定义一个区域

    @section 区域名
    
    {
    
      区域的内容
    
    }
    

    部分视图  

    ASP.NET MVC中提供了部分视图的功能,可以让你在页面中通过如下方式,去获取部分视图的内容,并嵌入到当前页面中。

    @{ Html.RenderPartial("视图名",参数); }
    @Html.Partial("视图名",参数); 
    @{ Html.RenderAction("actionName","controllerName","传递参数"); }  例如: @{Html.RenderAction("Test", "Home", new { s=item});} //s是Action的参数名
    @Html.Action("actionName","controllerName","传递参数")   

    其中Action表示去调用另一个Action里边的代码,通过参数传递需要的数据,通过Return PartialView(),将局部视图的内容嵌入到页面中。

    其中Partial表示将另一个局部视图的内容直接嵌入到页面中,并将局部视图所需要的数据通过参数传递过去。

    有Render开头的方法,局部视图的内容会被写入到当前视图的响应流中,效率稍微高一点。但是必须采用代码块方式 @{  代码  } 调用。

    不带Render开头的方法,返回的是一个字符串值,嵌入到页面中。

  • 相关阅读:
    Javascript事件处理进阶
    Restful API设计指南
    Git&GitHub
    Linux补充
    堡垒机
    Python发送邮件
    js获取当前页面url网址信息
    高并发的秒杀系统
    CMDB开发
    Tornado
  • 原文地址:https://www.cnblogs.com/feihusurfer/p/3990650.html
Copyright © 2020-2023  润新知