什么是ASP.NET MVC,以及其优点概览
创始人
2024-05-03 21:41:49
0

ASP.NET MVC是相对于传统的ASP.NET Web Form形式而言的。MVC框架具有很强的优越性,而WebForm也不是一无是处,在简单的应用中更加容易开发。以下对ASP.NET MVC做一些简单的介绍。

什么是ASP.NET MVC?

在了解ASP.NET MVC之前,先了解一下什么是MVC。MVC是Model-View-Controller的缩写,也就是模型—视图—控制器的意思。MVC用于表示一种软件架构模式,它把软件系统分为三个基本部分:模型(Model),视图(View)和控制器(Controller)。模型(Model)一般是指“数据模型”,用于封装与应用程序的业务逻辑相关的数据以及对数据的处理方法。“模型”有对数据直接访问的权利,例如对数据库的访问。“模型”不依赖“视图”和“控制器”,也就是说,模型不关心它会被如何显示或是如何被操作。视图(View)也就是UI层,实现数据的显示。控制器(Controller)起到不同层面间的组织作用,用于控制应用程序的流程,它处理事件并作出响应。

ASP.NET MVC是在现有ASP.NET 3.5运行时的顶层提供一种新的模型-视图-控制器(MVC, Model-View-Controller)框架。这就允许开发人员利用MVC设计模式的优势创建自己的ASP.NET Web应用程序,它将内容显示(UI或者View)、业务逻辑和后台数据进行了清晰分离,可以说是MVC在ASP.NET中的实现。

什么是ASP.NET MVC之ASP.NET MVC和ASP.NET Web Form有什么关系?

ASP.NET MVC只是另外一种开发ASP.NET应用程序的设计模式,不会取代ASP.NET Web Form模式,两者是不行的,不会冲突。

什么是ASP.NET MVCASP.NET MVC的优点:

不再有ViewState:传统的ASP.NET WebForm模式利用ViewState保存表单的状态信息,由于B/S程序本身的限制,ViewState存储数据需要在隐藏表单域里面放置很大一段字符串,这会大大增加页面的字节数,导致网页加载变慢;

简介的HTML:最终生成的 HTML代码完全由自己控制,不会生成任何“垃圾代码”;

更快的服务器端处理和客户端呈现:MVC只简单地处理“模板”,而无需构建复杂的控件树,因此,无论是在服务器处理的时间,和客户端的呈现速度都会有所提高;

为多种视图只需一种模型:有时候一个页面要显示的数据是同一个,但表现形式有细微的差别,此时只需要修改视图部分,可以采用现有的控制器行为;

单元测试:Webform的测试是很困难的,使用MVC,可以将业务逻辑与页面分离开,可以不在ASP.NET进程中执行控制器,方便测试

【编辑推荐】

  1. ASP.NET MVC与WebForm区别谈
  2. ASP.NET MVC单元测试:HttpContext类的Path属性解惑
  3. 自定义的ControllerFactory:接口实现,支持Area
  4. ASP.NET Routing之“解析URL”功能详解
  5. 为ASP.NET MVC应用添加自定义路由

相关内容

热门资讯

如何允许远程连接到MySQL数... [[277004]]【51CTO.com快译】默认情况下,MySQL服务器仅侦听来自localhos...
如何利用交换机和端口设置来管理... 在网络管理中,总是有些人让管理员头疼。下面我们就将介绍一下一个网管员利用交换机以及端口设置等来进行D...
施耐德电气数据中心整体解决方案... 近日,全球能效管理专家施耐德电气正式启动大型体验活动“能效中国行——2012卡车巡展”,作为该活动的...
Windows恶意软件20年“... 在Windows的早期年代,病毒游走于系统之间,偶尔删除文件(但被删除的文件几乎都是可恢复的),并弹...
20个非常棒的扁平设计免费资源 Apple设备的平面图标PSD免费平板UI 平板UI套件24平图标Freen平板UI套件PSD径向平...
德国电信门户网站可实时显示全球... 德国电信周三推出一个门户网站,直观地实时提供其安装在全球各地的传感器网络检测到的网络攻击状况。该网站...
着眼MAC地址,解救无法享受D... 在安装了DHCP服务器的局域网环境中,每一台工作站在上网之前,都要先从DHCP服务器那里享受到地址动...
为啥国人偏爱 Mybatis,... 关于 SQL 和 ORM 的争论,永远都不会终止,我也一直在思考这个问题。昨天又跟群里的小伙伴进行...