您的位置:首页 > 运维架构 > 网站架构

【架构设计】-MVC宏观总结

2016-01-10 22:11 726 查看
 在八月份的时候,我还以为MVC就是和DUB相对应呢.在这次学习ITOO框架的时候,再次接触到了MVC和WCF,这次我是先学习的MVC,先把MVC理清楚了,再来理WCF.
 
       
那5个月后,再次理解MVC,发生了哪些变化呢?
       
我们首先来看MVC全称——Model
View Controller
 
        Model:主要与数据库打交道,是对数据库进行存取操作。
      
    View:用来显示界面
 
    Controller:控制用户的输入与输出
 
       
下面是我做的W3C上的一个小例子,暂时还没有涉及到数据库,也就涉及不到Model层的东西。
 

 


   
这次我是从程序的入口点(也就是Global.asax文件)开始进行调试,一步步查看MVC框架是如何执行的。
 
 
程序的入口点:Global.asax
       



 
 
        
在这个例子中的调用就相当于是:程序运行——Controller——View——用户——用户输入——Controller——View
 
一、程序运行
 
第一步:注册路由
 
  public static voidRegisterRoutes(RouteCollection routes)
        {
           routes.IgnoreRoute("{resource}.axd/{*pathInfo}");//对所有的axd资源进行忽略,直接进行URL访问
 
            //添加一个路由映射
            routes.MapRoute(
                "Default", //
路由名称
               "{controller}/{action}/{id}", //
带有参数的 URL
                new
                {
                    controller ="Home",
                    action = "Index",
                    id = UrlParameter.Optional
                } //
参数默认值
            );
 
        }
 
        protected void Application_Start()
        {
                    RegisterRoutes(RouteTable.Routes);
        }
 
 
解析:MVC中的路由主要就是
匹配传入的请求,将这些请求映射到控制器操作,构造传出的URL用来响应控制器中的操作。如想了解更多关于MVC路由机制的知识,请移步到此篇博客:《MVC路由机制详解》
 
第二步:调转到Controller
 
 public ActionResult Index()
{
       return View();
}
 
第三步:显示页面(View)
 
_Viewstart.cshtml——要显示的页面——_Layout.cshtml
 
Viewstart.cshtml
其实就相当于程序的入口点一样,它是页面的一个入口点,每次显示页面都要先调用它,因为里面写的内容是:Layout母版页的地址,也就是公共的页面布局的东西。
 
要显示的页面:加载页面的时候,总是先调用要显示的页面,然后再去调用公共的部分,最后显示出我们想要的界面。
 
 在viewstart和要显示的页面内容,没有什么好讲解的,如果想多了解一些关于Layout的知识,请移步到此篇博客《MVC中的layout讲解》
 
二、切换页面
 
       
首先调用的是Controller里面的方法,然后再是显示页面的那一套,执行顺序ViewStart——要显示的页面下的内容——Layout
 
 
总结:
以上就是MVC(无Model层)的一个简单执行过程,这也是刚刚开始接触MVC的一些理解,有理解不当的地方,望读者指出!
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: