页面布局

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开头的方法,返回的是一个字符串值,嵌入到页面中。

asp.net mvc 4 高级编程学习笔记:第三章 视图(2)的更多相关文章

  1. ASP.NET MVC5 高级编程-学习日记-第三章 视图

    开发人员之所以花费大量时间来重点设计控制器和模型对象,是因为在这些领域中,精心编写的整洁代码是开发一个可维护Web应用程序的基础. 3.1 视图的作用 视图的职责是向用户提供用户界面.当控制器针对被请 ...

  2. JavaScript高级编程学习笔记(第三章之一)

    继续记笔记,JavaScript越来越有意思了. 继续... 第三章:JavaScript基础 ECMAScript语法在很大程度上借鉴了C和其它类似于C的语言,比如Java和Perl. 大小写敏感: ...

  3. asp.net mvc 4 高级编程学习笔记:第四章 模型

    数据模型 数据模型及O/R转化,采用EntityFramework实现. 可以采用firstCode模型,首先定义模型,通过模型生成数据库,也可以通过安装EFPowerTools,通过数据库自动生成对 ...

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

    1.基础规则 视图的职责是向用户提供用户界面. 视图位于View目录下:有普通的需要控制器渲染的视图,有局部视图,有布局视图等各种视图. 2.视图渲染 控制器默认情况下渲染与控制器同名的目录内的与Ac ...

  5. JavaScript高级程序设计学习笔记第三章--基本概念

    一.标识符: 1.区分大小写 2.命名规则: 第一个字符必须是一个字母.下划线(_)或一个美元符号($) 其他字符可以是字母.下划线.美元符号或数字 标识符中的字母也可以包含扩展的 ASCII 或 U ...

  6. ASP.NET MVC 4高级编程(第4版)

    <ASP.NET MVC 4高级编程(第4版)> 基本信息 作者: (美)Jon Galloway    Phil Haack    Brad Wilson    K. Scott All ...

  7. 《DOM Scripting》学习笔记-——第三章 DOM

    <Dom Scripting>学习笔记 第三章 DOM 本章内容: 1.节点的概念. 2.四个DOM方法:getElementById, getElementsByTagName, get ...

  8. The Road to learn React书籍学习笔记(第三章)

    The Road to learn React书籍学习笔记(第三章) 代码详情 声明周期方法 通过之前的学习,可以了解到ES6 类组件中的生命周期方法 constructor() 和 render() ...

  9. [HeadFrist-HTMLCSS学习笔记]第三章构建模块:Web页面建设

    [HeadFrist-HTMLCSS学习笔记]第三章构建模块:Web页面建设 敲黑板!! <q>元素添加短引用,<blockquote>添加长引用 在段落里添加引用就使用< ...

随机推荐

  1. iOS 使用AFN 进行单图和多图上传

    图片上传时必要将图片进行压缩,不然会上传失败 1.单张图上传 AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManag ...

  2. C++标准库简介、与STL的关系。

    转自http://www.cnblogs.com/xiongjiaji/archive/2011/06/22/2476490.html C++标准库的所有头文件都没有扩展名.C++标准库的内容总共在5 ...

  3. Oracle 11g新特性

    文章转自网络 Oracle 11g于2007年7月11日美国东部时间11时(北京时间11日22时)正式发布,11g是甲骨文公司30年来发布的最重要的数据库版本,根据用户的需求实现了信息生命周期管理(I ...

  4. POJ2195 Going Home

    Time Limit: 1000MS   Memory Limit: 65536K Total Submissions: 22091   Accepted: 11156 Description On ...

  5. 正则表达式——语法

    正则表达式(regular expression)--描述一种字符串匹配模式,可以用来检测一个字符串是否包含特定的子串.用其他字符串将其代替.提取出某个符合要求的子串. 正则表达式   由普通字符 和 ...

  6. BeautifulSoup高级应用 之 CSS selectors /CSS 选择器

    BeautifulSoup支持最常用的CSS selectors,这是将字符串转化为Tag对象或者BeautifulSoup自身的.select()方法. 本篇所使用的html为: html_doc ...

  7. Java Servlet完全教程

    Servlet 是一些遵从Java Servlet API的Java类,这些Java类可以响应请求.尽管Servlet可以响应任意类型的请求,但是它们使用最广泛的是响应web方面的请求. Servle ...

  8. hdu 1863 - 畅通工程(MST)

    畅通工程 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Submis ...

  9. Java Code Examples for javax.servlet.http.Part

    http://www.programcreek.com/java-api-examples/index.php?api=javax.servlet.http.Part The following ar ...

  10. 提交 git 项目 到 github 在 centos 7

    Git 是分布式版本控制系统(Distributed Version Control System,简称 DVCS),它可以备份文件的历史信息,多个终端可以同时对文件作修改. 文件内容如果有了变化和之 ...