先布局页使用@RenderSection("Head", false) 定义一个要替换的区域,第一个参数表示替换区域名称,第二个参数为可选参数,false表示可以不必一定在页面中替换,true表不必须被替换
然后在内容页中使用
@section Head{
输出给头部的内容
}
引用布局页
方式一
在内容页中直接使用Layout属性赋值布局布文件路径。
@{
Layout =
Url.Content("~/Views/Shared/_Home.cshtml");
}
这种方式对以后的修改是比较麻烦的,不推荐使用
方式二
在内容页的文件夹或父级文件夹添加_ViewStart.cshtml文件,然后在_ViewStart.cshtml文件中引用布局页(这很与aspx开发的web.config文件类似)
当不同的文件夹内的如果要使用不同的布局时,可以在相应的文件夹下新建_ViewStart.cshtml文件
当相同文件夹内的文件要使用不同布局时,只能在内容页里使用Layout属性了
使用布局页时,当此用js文件时,必须使用<script src="" type="text/javascript"></script>结尾,而不能使用<script src="" type="text/javascript" />
原文:http://www.cnblogs.com/ljx2012/p/3645278.html