MVC,布局页面
一》》》
在_ViewStart.cshtml文件中,加入:
@{
Layout = "~/Views/Shared/_Layout.cshtml";
PageData["aaa"] = "我是哇哈哈哈";
}
然后新建一个Action方法,添加相应的视图(使用布局页),在该视图中添加
@{
ViewBag.Title = "ViewStart";
}
<h2>ViewStart</h2>
@PageData["aaa"]
然后运行该视图页面:
二》》》》
在布局页_Layout.cshtml文件中添加如下代码:
<!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")
@RenderSection("WaHaHa", false)
</head>
<body>
@RenderBody()
@Scripts.Render("~/bundles/jquery")
@RenderSection("scripts", required: false)
</body>
</html>
然后在使用布局页的视图页ViewStart.cshtml文件中,添加如下代码:
@{
ViewBag.Title = "ViewStart";
}
<h2>ViewStart</h2>
@PageData["aaa"]
@section WaHaHa{
我是来填坑的,哇哈哈哈~~~~
}
然后运行该页面:
查看源文件:
<!DOCTYPE html> <html> <head> <meta charset="utf-8" /> <meta name="viewport" content="width=device-width" /> <title>ViewStart</title> <link href="/Content/site.css" rel="stylesheet"/> <script src="/Scripts/modernizr-2.6.2.js"></script> 我是来填坑的,哇哈哈哈~~~~ </head> <body> <h2>ViewStart</h2> 我是哇哈哈哈 <script src="/Scripts/jquery-1.8.2.js"></script> <!-- Visual Studio Browser Link --> <script type="application/json" id="__browserLink_initializationData"> {"appName":"Chrome","requestId":"a052f5c134ef4357985c1181d7053d6d"} </script> <script type="text/javascript" src="http://localhost:8071/4528b17c5df744bc8aed0fac9bed7023/browserLink" async="async"></script> <!-- End Browser Link --> </body> </html>
总结:RenderSection是小坑,可以挖很多小坑,使用了布局页的页面,可以使用很多小坑。
@RenderBody()是大坑,就是使用了,布局页的页面,在自己的页面中,可以写很多内容,都是放到 @RenderBody()方法中,有小坑的话小坑中也有对应的内容放入!
每天学一点,每天积累一天,进步就不止一点点!PS:好记性不如烂笔头,学会总结,学会思考~~~
----要飞翔,必须靠自己!