龙盟编程博客 | 无障碍搜索 | 云盘搜索神器
快速搜索
主页 > web编程 > asp.net编程 >

.NET中WebForm与Asp.NET MVC的区别,你正确认识了吗?

时间:2009-12-21 11:47来源:未知 作者:admin 点击:
分享到:
下面文章教你正确认识webfrom与mvc的区别? 1.传统WebForm开发中存在的一些问题 传统的ASP.NET开发中,微软的开发团队为开发者设计了一个在可视化设计器中拖放控件,编写代码响应事件的
下面文章教你正确认识webfrom与mvc的区别?
1.传统WebForm开发中存在的一些问题

 传统的ASP.NET开发中,微软的开发团队为开发者设计了一个在可视化设计器中拖放控件,编写代码响应事件的快速开发环境。然而,它所带来的负面效应是: 

  •  由于控件封装了很多东西,开发者很难了解这背后的HTML是如何运作的
  • 容易得到一个包含大量ViewState的页面,使得页面尺寸远远超过所需的内容,使得页面的打开速度较慢
  • 不容易被测试

2.什么是MVC?


 MVC(Model-View-Controller,模型-视图-控制器模式)是软件工程中的一种软件架构模式。它把软件系统分为三个基本部分:模型(Model)、视图(View)和控制器(Controller)。

3.什么是ASP.NET MVC?


ASP.NET MVC是微软的开发团队基于MVC开发的一个易于被测试的框架。它具有以下特性:

  • 没有数据回传
  • 没有在页面中保存视图状态
  • 开发者可以完全掌控页面的呈现过程 
  • 易于单元测试
  • 易于测试驱动开发
  • 可扩展、可替换
  • 支持WebForm中的有关特性,如:用户控件、母版页、数据绑定、本地化等
  • 不在基于文件目录结构,而是将URL映射到控制器中 

4. 为什么使用ASP.NET MVC?

  • 易于进行单元测试
  • 易于进行测试驱动开发
  • 避免了WebForm中大量的ViewState导致页面文件变得臃肿

5. MVC与三层架构?  

  • MVC是一种模式
  • ASP.NET MVC是一个基于MVC模式的开发框架
  • 三层架构是一种架构

至于区别,可以严格的从概念上区分开来。

下图是MVC与三层架构的对应关系

  

6. MVC与Webform如何抉择?  

 

精彩图集

赞助商链接