MVC中 _ViewStart _Layout Index三个页面中的加载顺序

MVC学习中忽然想到一个问题..

在访问一个Index.cshtml页面时, MVC的加载顺序是怎么样的呢?

 

首先说下我的结论  

1.  _ViewStart.cshtml

2.  Index.cshtml

3.  _Layout.cshtml

经过实验认为 http://www.byywee.com/page/M0/S957/957632.html 给出的结论是错误的.

若有不同意见的道友请留言辩驳..不胜荣幸

 

论述我的观点和实验过程:

经过了解

_ViewStart.cshtml页面指定谁是模板页  一般都是 _Layout页面

@{
    Layout = "~/Views/Shared/_Layout.cshtml";
}

_Loyout.cshtml类似于以前用的 Site.Master 母版页...是页面中公用部分的盛放地方..

Index.cshtml是我们访问的目标页面

 

我们在这三个页面中第一行位置都写入一段代码并加断点..

会发现页面先进入了_ViewStart.cshtml页面中..首先给Layout变量赋值了..

然后进入竟然是Index.cshtml页面..最后才是_Layout.cshtml页面..

那么问题来了..

我们是不是可以在Index.cshtml页面中改变这个页面所要加载的模板页呢.?

经过实验是可以的..

只是新建的模板页中一定要实现在目标页面中定义的 @section 值

这个我们现在不详细的讲..可以关注我的后续博文 <MVC中的@section

posted @ 2015-03-19 20:47  代码工人有力量  阅读(6708)  评论(0编辑  收藏  举报