Razor视图引擎布局

  • 不需要像过去aspx一样,使用.Master文件,而是统一使用.cshtml 或 .vbhtml文件。但文件名一般以 _开头,这样做文件不会当做View显示出来
  •  使用@RenderBody() 表示替换主体部分
  •  使用@RenderSection()可以自定义替换部分,

    先布局页使用@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" />

 

posted @ 2014-04-04 15:30  刘继先  阅读(826)  评论(1编辑  收藏  举报