初探MVC-MVC的前世今生(1)

限于喜欢 提交于 2020-01-10 21:06:57

MVC最早的概念:

 

三层模式:继承了原来MVC的概念

 

ASP.NET MVC 只是UI层的表示框架,是微软的第一个开源项目;

根据下图重新理解下原始MVC概念(左图),微软ASP.NET(UI(Controller、View、Model)),三层架构(UI、BLL、DAL、Model)

 

 

现代的微软ASP.NET MVC仅仅只是UI(上图右上角)层的一个框架,它的地位和WebForm是平级的,是一种网站开发框架;

而三层架构中的其余三个BLL(业务逻辑层)、DAL(数据操作层)、Model(实体模型层)仍需要我们去写类库(DLL)实现即可; 

注意:如何区分UI层Model和三层中Model的概念

UI层Model的理解(图书的例子),

UI层Model是对需要展示的数据的一种自定义封装

三层架构中的Model是对应着数据库中的表,一个表就代表一个类,表中的字段就是类中的属性

比如说数据库中有两张表 ,一张表包含图书的名字和作者,另一张表是图书的分类信息

现在我的展示视图View需要显示图书信息,这个图书信息既包含了图书的名字和作者,又包含了图书的分类信息

那么我在MVC的Model定义中就需要自定义这个Book类,去包含三层中Model那两张表的图书名字、作者、分类三个字段信息

但是如果我在UI层中的View只需要展示图书的分类信息,那么可以直接调用三层Model中的图书分类信息类即可,不需要再去在UI层中的Model中重复定义一个图书分类信息类

所以要严格区分三层中的Model层和UI层中的Model不是同一个东西。

 

一般来说ASP.NET中的三层中的Models是不需要额外添加的,一般是引用三层中的Model中的实体类

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!