在三层架构中没有定义Controller的概念。自认为这是最不同的地方。而MVC也没有把业务的逻辑访问看成两个层,这是采用三层架构或MVC搭建程序最主要的区别。当然了。在三层中也提到了Model,但是三层架构中Model的概念与MVC中Model的概念是不一样的,“三层”中典型的Model层是以实体类构成的,而MVC里,则是由业务逻辑与访问数据组成的。
三层架构中,DAL(数据访问层)、BLL(业务逻辑层)、WEB层各司其职,意在职责分离,还有 Entity(实体类层)。
MVC把 DAL、BLL、Entity 统一称之为 模型(MODEL),得到:View、Controller、模型(MODEL)。
Controller来负责View和Model的联系. 在Asp.Net三层架构中,页面都对应一个后台控制代码,耦合度较高.
三层是基于业务逻辑来区分的,MVC是基于页面区分的. 按照微软官网描述: MVC 是许多开发人员熟悉的标准设计模式。
一些类型的 Web 应用程序将得益于 MVC 框架。
一些类型将继续使用基于 Web 窗体和回发的传统 ASP.NET 应用程序模式。
其他类型的 Web 应用程序将结合这两种方法;这两种方法彼此互不包含。
MVC 应用程序的三个主要组件之间的松散耦合也可促进并行开发。 例如,一个开发人员可以从事视图方面的工作,第二个开发人员可以从事控制器逻辑方面的工作,第三个开发人员可以侧重于模型中的业务逻辑。