MVC是一种模式,是一种软件的构架模式。它把软件系统分为三个部分:模型(Model),视图(View)和控制器(Controller)。MVC模式的目的是实现一种动态的程序设计,使后续对程序的修改和扩展简化,并且使程序某一部分的重复利用成为可能。除此之外,此模式通过对复杂度的简化,使程序结构更加直观。软件系统通过对自身基本部份分离的同时也赋予了各个基本部分应有的功能。
模型(Model),视图(View)和控制器(Controller)简称"MVC",它们之间的关系如下图1.
图1.
模型(Model) “数据模型”(Model)用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。“模型”有对数据直接访问的权力,例如对数据库的访问。“模型”不依赖“视图”和“控制器”,也就是说,模型不关心它会被如何显示或是如何被操作。但是模型中数据的变化一般会通过一种刷新机制被公布。为了实现这种机制,那些用于监视此模型的视图必须事先在此模型上注册,从而,视图可以了解在数据模型上发生的改变。
视图(View) 视图层能够实现数据有目的的显示;在视图中一般没有程序上的逻辑。为了实现视图上的刷新功能,视图需要访问它监视的数据模型(Model),因此应该事先在被它监视的数据那里注册。
控制器(Controller) 控制器起到不同层面间的组织作用,用于控制应用程序的流程。它处理事件并作出响应。“事件”包括用户的行为和数据模型上的改变。
所以图1就可以延伸为下图2.的形式。
图2.
MVC的描述就先到这里吧!我们还是用它给大家打个招呼吧!MVC自问世至今也有经历了N次变身了!1.0的版本BUG太多了,相对也不成熟,不稳定。到时2.0的时候就好很多了,但是还是残留一点的不足,还是很有很多问题,首先满页面的<%%>就让很多人感觉不爽了!到了3.0的时候那就相对完美很多了,出了新的Razor引擎写法对程序员来说友好很多了!如果是新手,我建议从3.0一起学习吧!当然还有大家一起期待的4.0版本,目前还在内测(Beta)状态,相对3.0则是更加强大了。
当然学习3.0还是要感谢许多前人为我们写了不少的文章,供我们新手学习,因为现在针对Asp.Net MVC的资料还是甚少,可见园子上那些前人是付出多少心血为了让我们学习新的东西,在