一》》》
在_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()方法中,有小坑的话小坑中也有对应的内容放入!