ASP.NET MVC3模板页的使用(2)
|
本文为大家演示下MVC3中怎样使用模板页,在传统的webform设计模式中,我们使用masterpage作为模板页,在MVC3 razor视图设计中,我们使用另一种方式作为模板页。 新建一个MVC3项目,在解决方案资源管理中,我们可以看到VIEWS文件夹下面有一个Shared文件夹。在Shared文件夹里面有一个_Layout.cshtml页面。这个就是项目中默认的模板页面。如下图所示 :
1.新建内容页
使用模板页的页面,会自动在页面中生成代码。来指定模板页,使用Layout来指定具体的模板页。如果内容页中没有Layout属性,则使用的是默认的模板页
@{
ViewBag.Title = "ViewPageOne";
Layout = "~/Views/Shared/_Layout.cshtml";
}
<h2>ViewPageOne</h2>
如果Layout指定为null,则表示不使用模板页
@{
ViewBag.Title = "ViewPageOne";
Layout = null;
}
2.新建模板页 右键选择Shared文件,然后在菜单中选择添加 新建项,弹出添加新项对话框,然后选择MVC3布局页,这样就添加完成了布局页,下面的我们添加的布局页_LayoutPageOne.cshtml
3.为某个文件单独指定模板页
@{
ViewBag.Title = "ViewPageOne";
Layout="~/Views/Shared/_LayoutPageOne.cshtml";
}
<h2>ViewPageOne</h2>
4.为某个视图文件夹指定模板页
@{
Layout = "~/Views/Shared/_LayoutPageOne.cshtml";
}
这样就可以把一个controller下面的视图指定为使用一个模板文件 5.页面不使用模板页 模板页:
<!DOCTYPE html>
<html>
<head>
<title>欢迎 @ViewBag.Title</title>
</head>
<body>
<p>第2个模板页</p>
<div>
@RenderBody()
</div>
<div>
备注:
@RenderSection("Remark", false);
</div>
</body>
</html>
内容页:
@{
ViewBag.Title = "主页";
}
<h2>@ViewBag.Message</h2>
<p>
若要了解有关 ASP.NET MVC 的更多信息,请访问 <a href="http://asp.net/mvc" title="ASP.NET MVC 网站">http://asp.net/mvc</a>。
</p>
@section Remark
{
我是主页
}
<p>欢迎</p>
8.@RenderPage
<!DOCTYPE html>
<html>
<head>
<title>欢迎 @ViewBag.Title</title>
</head>
<body>
<p>第2个模板页</p>
<div>
@RenderBody()
</div>
<div>
备注:
@RenderSection("Remark", false);
</div>
<footer>
@RenderPage("~/Views/Shared/footer.cshtml")
</footer>
</body>
</html>
(编辑:南平站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |



