mvc怎么套用html模板,ASP.NET MVC3模板页的使用(2)
本文为大家演示下MVC3中怎样使用模板页,在传统的webform设计模式中,我们使用masterpage作为模板页,在MVC3 razor视图设计中,我们使用另一种方式作为模板页。
新建一个MVC3项目,在解决方案资源管理中,我们可以看到VIEWS文件夹下面有一个Shared文件夹。在Shared文件夹里面有一个_Layout.cshtml页面。这个就是项目中默认的模板页面。如下图所示 :
1.新建内容页
内容页在MVC3中也叫做视图布局页,可以右键选中视图文件夹,通过添加视图来添加内容页,然后选择相应的模板。下面就是我们创建的内容页ViewPageOne.cshtml
使用模板页的页面,会自动在页面中生成代码。来指定模板页,使用Layout来指定具体的模板页。如果内容页中没有Layout属性,则使用的是默认的模板页
@{
ViewBag.Title = "ViewPageOne";
Layout = "~/Views/Shared/_Layout.cshtml";
}
ViewPageOne
如果Layout指定为null,则表示不使用模板页
@{
ViewBag.Title = "ViewPageOne";
Layout = null;
}
2.新建模板页
右键选择Shared文件,然后在菜单中选择添加 新建项,弹出添加新项对话框,然后选择MVC3布局页,这样就添加完成了布局页,下面的我们添加的布局页_LayoutPageOne.cshtml
3.为某个文件单独指定模板页 假如某个页面不想使用默认的模板页,可以单独为其指定模板页,下面的代码把内容页的模板页指定为刚创建的模板页_LayoutPageOne.cshtml
@{
ViewBag.Title = "ViewPageOne";
Layout="~/Views/Shared/_LayoutPageOne.cshtml";
}
ViewPageOne
4.为某个视图文件夹指定模板页 假如想让一个Controller下面的所有视图使用同一个模板文件,可以在该Controller对应的试图文件夹下面创建一个_ViewStart.cshtml文件,然后在_ViewStart.cshtml里面指定所使用的模板页
@{
Layout = "~/Views/Shared/_LayoutPageOne.cshtml";
}
这样就可以把一个controller下面的视图指定为使用一个模板文件
5.页面不使用模板页
如果一个内容页面不想使用模板页,可以把_Layout设置为null
也可以在添加视图页面的时候不选择模板。
6.@RenderBody()
@RenderBody()在模板页中使用表示内容页在模板中的位置。当创建具有模板页的内容页的时候,内容页就呈现在模板页中@RenderBody()所在的位置,一个模板页中只能有一个@RenderBody().
7.@RenderSection
@RenderSection用于在模板布局中定义一个区域,在内容页可以定义一些内容来填充这个区域,例如内容页中引用的JS文件,可以填充到模板页的section位置。每个内容页的单独一些信息,可以在模板页中这个区域显示。
@RenderSection有两个参数,第一个参数用于定义section的名称,第2个参数是布尔类型,如果为TRUE,表示内容页必须定义这个section,如果为false,则表示内容页可定义section,也可以不定义。
模板页:
欢迎 @ViewBag.Title
第2个模板页
@RenderBody()
备注:
@RenderSection("Remark", false);
内容页:
@{
ViewBag.Title = "主页";
}
@ViewBag.Message
若要了解有关 ASP.NET MVC 的更多信息,请访问 http://asp.net/mvc。
@section Remark
{
我是主页
}
欢迎
8.@RenderPage
@RenderPage用于表示在一个页面中呈现另一个页面的内容.参数指定要呈现的网页的位置。
我们在Shared文件夹下面新建一个footer.cshtml文件,然后里面写上版权信息,然后在模板页中开辟一块位置用来呈现footer页面。
欢迎 @ViewBag.Title
第2个模板页
@RenderBody()
备注:
@RenderSection("Remark", false);
@RenderPage("~/Views/Shared/footer.cshtml")
9.@Html.Partial()与Html.RenderPartial()
.@Html.Partial()与Html.RenderPartial()这两个方法可以用来输出一个分部页,右键添加新建项,选择MVC3分部页,就可以添加一个分部页,相当于一个用户控件,
这时候就可以使用者两个方法来输出分部页的内容,当然,这两个方法也可以直接输出视图页和内容页。
@Html.Partial()的参数为用户控件名称,也就是分部页名称,返回值为string类型,可以直接输出。
@Html.RenderPartial()的参数也为用户控件名称,返回值为VOID,调用的时候直接把内容输出到Response中。
用法如下:
@Html.Partial("_PartialLogin")
@{
Html.RenderPartial("_PartialLogin");
}
以上就是ASP.NET MVC3模板页的使用方法
mvc怎么套用html模板,ASP.NET MVC3模板页的使用(2)相关推荐
- SharePoint 2010中的客户端AJAX应用——ASP.NET AJAX模板
WCF Data Services是SharePoint 2010中一个极具吸引力的新特性.然而,因为它的强大,直接对其进行编程仍然会有点痛苦.幸运的是,一个新的相关技术 -- ASP.Net AJA ...
- ASP.NET MVC3细嚼慢咽---(2)模板页
这一节演示下MVC3中怎样使用模板页,在传统的webform设计模式中,我们使用masterpage作为模板页,在MVC3 razor视图设计中,我们使用另一种方式作为模板页. 新建一个MVC3项目, ...
- ASP.NET MVC3 学习笔记(一)MVC模式简介
以下文字摘自 ASP.NET MVC3 高级编程 MVC将应用程序的用户界面(User Interface,UI)分为三个主要部分: 模型:一组类,描述了要处理的数据以及修改和操作数据的业务规则 视图 ...
- [MVC.NET] Asp.Net MVC3 简单入门第一季
转自:http://www.cnblogs.com/fly_dragon/archive/2011/10/12/2208042.html 初识Asp.Net MVC2.0 初识Asp.Net MVC2 ...
- html mvc 分页 保存,Asp.net Mvc3 加载cshtml文件自定义分页+ 查询
遇到的问题: 单纯的数据列表,分页ok,但是加上其它外界因素,常见的如 查询,排序,分页如何跟它们结合呢? 分页如何和查询,排序结合? 我的思路,查询.排序为主,分页为次. 1.查询条件改变,页码重新 ...
- ASP.NET MVC3 快速入门--第二节 添加一个控制器
MVC的全称为model-view-controller(模型-视图-控制器).MVC是一种开发应用程序的模式,这个模式已经具有了很好的框架架构,并且十分容易维护.使用MVC开发出来的应用程序一般包括 ...
- [译]Professional ASP.NET MVC3(01)-Chapter 1:Getting Started(上)
本章概要 理解ASP.NET MVC ASP.NET MVC3 预览 如何创建MVC3应用程序 MVC应用程序结构 本章首先简要介绍ASP.NET MVC, 解释它怎样适应ASP.NET MVC的历史 ...
- ASP.NET MVC3 Razor视图引擎-基础语法
I:ASP.NET MVC3在Visual Studio 2010中的变化 在VS2010中新建一个MVC3项目可以看出与以往的MVC2发生了很明显的变化. 1.ASP.NET MVC3必要的运行环境 ...
- ASP.NET MVC3书店--第七节 用户及身份验证(转)
http://blog.sina.com.cn/s/blog_6ad539a90100r7jx.html 现在的问题是任何用户都可以通过StoreManager控制器来访问我们的书籍管理页面.接下来让 ...
最新文章
- 【keras】Input 0 of layer conv2d is incompatible with the layer. expected ndim=4, found ndim=3
- linux spyder 目录,linux下创建spyder桌面图标的方法
- POJ2369 置换群
- 各个 Android Gradle 插件版本所需的 Gradle 版本
- Android之如何使用junit
- pygame写游戏,常用代码记录
- Jquery 中的CheckBox、 RadioButton、 DropDownList的取值赋值
- Jeecg-Boot上传及下载附件异常处理
- 机器学习与计算机视觉(第一个卷积神经网络)
- [20190312]视图v$datafile字段OFFLINE_CHANGE#, ONLINE_CHANGE#.txt
- ubuntu16.04便捷使用(常用工具、常用快捷键、常用使用教程)
- 盲盒小程序源码下载、附赠完整图片素材源码
- 博客背景壁纸推荐(一)CSDN图床
- Windows系统邮件中如何绑定QQ邮箱
- Office2013办公软件简体中文专业增强版
- 正片叠底(Multiply)和滤色(Screen)是两种基本的混合模式
- Jboot框架的使用
- 区块链为化解信任危机带来新契机
- 学生个人网页设计作品 学生个人网页模板简单个人主页成品 个人网页制作 HTML学生个人网站作业设计
- 如何提升自己的设计能力
热门文章
- SAP Spartacus里所有backend endpoint list
- SAP Spartacus OccEndpointsService调用getBaseEndpoint的一些场景
- SAP CRM WebClient UI交互式报表的Gross Value工作原理
- SAP云平台部署应用时遇到的502 Updating service failed - Bad Gateway
- 将SpringBoot应用Docker化并部署到SAP云平台
- SAP ERP Material如何创建附件
- progressIndicator in SalesPipeline
- Hybris Commerce Cloud backoffice的一些使用截图 - home工作中心
- 阮一峰react demo代码研究的学习笔记 - demo7 debug - create ref element
- BCP timeout prevention - 每秒刷新一次 Fiori