Mvc模板页

以前学过WEB的应该都知道母版页这个东西,在这里呢,mvc的模板页和WEB中的模板页也是一样的效果和用途。

首先:创建一个项目,控制器,生成Index视图,在生成视图的时候我们选择Razor视图引擎,然后勾选“使用布局或母版页”选项,它默认引用的_Layout.cshtml页面的布局。_ViewStart.cshtml文件里已经对页面进行了配置,所有的Razor引擎页面在执行之前,都会来执行这个ViewStart页面。

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

Layout关键字就是用来指向默认页面布局的代码。这个视图呢就比ASPX视图干净的多。

自定义布局页:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width" />
<title>@ViewBag.Title</title>
@Styles.Render("~/Content/css")
@Scripts.Render("~/bundles/modernizr")
</head>
<body>
<p>this is up</p>
@RenderBody()
<p> this is down</p>
@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)
</body>
</html>

在子视图页面中编写的内容,都是出现在布局页@RenderBody定义的位置。

@RenderSection布局页面还有节(Section)的概念

当然我们的显示还是要在视图中编写的

---Index:

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

<h2>Index</h2>
<p>this is LayOutView</p>

时间: 2024-10-15 00:21:22

Mvc模板页的相关文章

MVC 模板页和布局

我们在以前的Asp.NET课程中已经学习过母版页了,在MVC中WebForm视图使用母版页的方法与以前基本相同. 创建一个项目MvcMasterPageDemo. 添加Home控制器,生成Index视图. 在生成视图的选框中,我们选择Aspx视图引擎,然后可以看到有"使用布局或母版页"的选项,给我们指向一个后缀为Master的文件(并不存在,所以无法完成视图添加). 现在我们自己去创建它. 找到对应的目录,添加一个母版页 我们将母版页的内容部分按视图选项卡下的名称来命名,这样就能在生成

创建 MVC的模板页,引用多个Css(期间,产生 HTTP 错误 500.23 - Internal Server Error   检测到在集成的托管管道模式下不适用的 ASP.NET 设置。)

首先,创建一个_Layut.cshtml的模板页 @using System.Web.Optimization <!DOCTYPE html> <html> <head> <meta name="viewport" content="width=device-width" /> <title>666</title> @Styles.Render("~/Content/Css/css&q

MVC系列学习(七)-模板页

1.新建一个MVC项目,选择基本 2.查看文件 看到VS为我们生成了一些东西 布局页面,Layout 指定了模板页 3.开始实例 首先控制器中的代码如下: 视图中代码如下: 1.在/Views/_ViewStart.cshtml[如果/Views下有中有该 子视图,运行时都先加载它先则它的优先级高与其他视图] 2.在/Views/Shared/_Layout.cshtml[模板页或布局页,如果视图中没设置Layout=null的话,都默认调用布局页] 3.在/Views/Home/_ViewSt

ASP.Net MVC开发基础学习笔记(5):区域、模板页与WebAPI初步

一.区域—麻雀虽小,五脏俱全的迷你MVC项目 1.1 Area的兴起 为了方便大规模网站中的管理大量文件,在ASP.NET MVC 2.0版本中引入了一个新概念—区域(Area). 在项目上右击创建新的区域,可以让我们的项目不至于太复杂而导致管理混乱.有了区域后,每个模块的页面都放入相应的区域内进行管理很方便.例如:上图中有两个模块,一个是Admin模块,另一个是Product模块,所有关于这两个模块的控制器.Model以及视图都放入各自的模块内.可以从上图中看出,区域的功能类似一个小的MVC项

ASP.NET MVC学习之路:模板页

1.MVC开发步骤: 控制器-视图. 2.每一个视图都会有一个默认的模板页:_ViewStart.cshtml. 名字不能改,只能叫_ViewStart. 3.Layout=”~/Views/Shared/_Layout.cshtml”; 代表指向的布局. 4._ViewStart.cshtml页面什么时候执行呢? 在每个页面执行之前,先执行此页面代码. 也就是说,给所有页面执行了默认布局了. 5.在_Layout.cshtml文件里,@RenderBody()表示在这个位置显示子页面的内容.相

Asp.Net MVC part45 过滤器、模板页

过滤器 使用方式自定义类继承自相应的类或接口,重写方法,作为特性使用在控制器类中重写方法 特性方式的使用注意:如果继承自接口需要让类实现FilterAttribute,才可以作为特性使用使用方式1:作为Controller或Action的特性使用方式2:在Global中注册为全局过滤器,应用于所有的Controller的Action参数类均继承自ControllerContext,主要包含属性请求上下文.路由数据.结果 身份验证过滤器在约束的Action执行前执行重写OnAuthorizatio

ASP.Net MVC开发基础学习笔记:五、区域、模板页与WebAPI初步

一.区域—麻雀虽小,五脏俱全的迷你MVC项目 1.1 Area的兴起 为了方便大规模网站中的管理大量文件,在ASP.NET MVC 2.0版本中引入了一个新概念—区域(Area). 在项目上右击创建新的区域,可以让我们的项目不至于太复杂而导致管理混乱.有了区域后,每个模块的页面都放入相应的区域内进行管理很方便.例如:上图中有两个模块,一个是Admin模块,另一个是Product模块,所有关于这两个模块的控制器.Model以及视图都放入各自的模块内.可以从上图中看出,区域的功能类似一个小的MVC项

MVC中子页面如何引用模板页中的jquery脚本

MVC中子页面如何引用模板页中的jquery脚本 最近在学习mvc,遇到了一个问题:在html页面中写js代码,都是引用mvc5自带的jquery脚本,虽然一拖(将指定的jquery脚本如 jquery-1.10.2.js拖动到页面html标签外)就可以搞定. 但是一个页面你可以拖,10个页面,100个页面你也拖吗?这样子是不是很麻烦.方法:将要引用的jquery脚本放入Layout页面中,这样子子页面就可以调用模板页中的jquery脚本了. 例子:1 首先建立一个模板页Layout页面,在其b

MVC笔记-模板页布局

@Styles.Render("~/Content/css") @Scripts.Render("~/bundles/modernizr") @RenderSection("header", required: false) <!-- 子页插入到head的入口.相当于母版页里的ContentPlaceHolder --> @{Html.RenderAction("LoginInfo", "Partial&