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

1.新建一个MVC项目,选择基本

2.查看文件

看到VS为我们生成了一些东西

布局页面,Layout 指定了模板页

3.开始实例

首先控制器中的代码如下:

视图中代码如下:


1.在/Views/_ViewStart.cshtml【如果/Views下有中有该 子视图,运行时都先加载它先则它的优先级高与其他视图】

2.在/Views/Shared/_Layout.cshtml【模板页或布局页,如果视图中没设置Layout=null的话,都默认调用布局页】

3.在/Views/Home/_ViewStart.cshtml【加载后/Views下的_ViewStart.cshtml,

然后会遍历当前请求视图所在文件夹下是否有名字为_ViewStart.cshtml的视图,有的话就加载】

4.在/Views/Home/SonPage.cshtml【本次学习的视图】

运行后,浏览器展示结果,如下

源代码如下【html标签还是很干净的】:

得出结论

1.当请求SonPage.cshtml视图页面时,
2.首先,编译器会到View文件夹下,加载名为_ViewStar.cshtml的视图(优先于所有视图,在任何文件夹下,都可以有一个)
3.如果_ViewStart.cshtml中的Layout属性不为null,表示加载了布局页,则根据Layout的值,加载相应布局页,
3.1在布局页中,可以指定页面不同位置,呈现不同的网页内容
4.然后,在到该视图(SonPage.cshtml)所在的文件夹下,看是否有名为_ViewStar.cshtml的文件,有的话就加载,
5.最后,才加载此次请求的视图(SonPage.cshtml)
6.发现模板页中 有“小坑”,则在模板页小坑的相应位置 填上坑(如果是非必须填的,可以不填), 然后SonPage.cshtml中其他内容,都 填到 大坑中
时间: 2024-12-09 20:41:57

MVC系列学习(七)-模板页的相关文章

ASP.NET MVC 4 (七) 模板帮助函数

和普通HTML帮助函数不同,模板帮助函数不需要指定所用的HTML类型,MVC会推断选择合适的HTML元素,这让我们有更多的灵活性. 使用模板帮助函数 我们使用<ASP.NET MVC 4 (六) 帮助函数>中的数据模型和控制器继续后面的例子,使用模板帮助函数后改写编辑输入的视图: @model HelperMethods.Models.Person @{ ViewBag.Title = "CreatePerson"; } <h2>CreatePerson<

ASP.NET MVC中切换模板页(不同目录的cshtml文件)

不想打字,看图,看来以后建立一个父类控制器还是有必要的...

创建 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

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

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

Mvc模板页

以前学过WEB的应该都知道母版页这个东西,在这里呢,mvc的模板页和WEB中的模板页也是一样的效果和用途. 首先:创建一个项目,控制器,生成Index视图,在生成视图的时候我们选择Razor视图引擎,然后勾选"使用布局或母版页"选项,它默认引用的_Layout.cshtml页面的布局._ViewStart.cshtml文件里已经对页面进行了配置,所有的Razor引擎页面在执行之前,都会来执行这个ViewStart页面. @{ Layout = "~/Views/Shared/

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

NET MVC RazorEngine 解析模板生成静态页

ASP.NET MVC 解析模板生成静态页一(RazorEngine) 简述 Razor是ASP.NET MVC 3中新加入的技术,以作为ASPX引擎的一个新的替代项.在早期的MVC版本中默认使用的是ASPX模板引擎,Razor在语法上的确不错,用起来非常方便,简洁的语法与.NET Framework 结合,广泛应用于ASP.NET MVC 项目. 我们在很多项目开发中会常常用到页面静态化,页面静态化有许多方式,最常见的就是类似很多PHP CMS种使用的 标签替换的方式(如:帝国CMS.EcSh

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

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