ASP.NET与MVC架构区别总结
1)ASP.NET Webforms Behind Code利于快速开发,方便可视化操作。
2)ASP.NET 使用了“基于视图”的解决方案去应对“基于行为”的需求,它处理了客户端的请求,IIS将请求转给对应的页面视图,然后又进行了页面的生命周期的一系列事件,最后服务器返回了一个HTML格式给客户端,这一过程对于
现今的MVC架构而言实在是太繁琐了,而现在的MVC直接将请求给对应的Controller控制器,控制器经过处理直接返回视图View给用户。
3)ASP.NET 不好的架构模式带来的副作用:紧耦合;页面代码ASPX和页面控制代码ASPX.cs永远无法分离,不同页面不能轻易组合使用,页面事件过多维护周期过长。而MVC则不一样,视图可以来回轻松切换,代码易于重用,实现简单方便。
4)HTML并不是服务器返回数据的唯一格式,ASP页面返回格式固定是HTML格式,如果要弹出JS或者使用Ajax调用,就不太方便了,那就只能借助Response了,这就很头疼了。而MVC返回格式是多样化的,JSON格式、HTML格式、JAVAScript格式都可以。
5)“视图”与“数据”的灵活组合,MVC直接将需要的数据传递给页面即可,视图的UI只负责展示即可,不用像ASP一样调用复杂的数据逻辑,何况ASP页面展示逻辑又容易和数据逻辑互相串联,违背了单一原则。
MVC由基于视图的ASP.NET转变为基于行为的架构,更改了如下内容:
a.原理的Behind Code定义为相关的Controller类,原来的事件变成一系列的Action方法
b.View仅仅用于展示数据,不再和数据逻辑纠缠在一起了
c.数据访问层DAL不用做多大改变,因为它本身和Behind Code牵连少,因为中间隔了个BLL业务逻辑层。
因此MVC的Controller类只处理了相关的基于行为操作
现在,MVC通过获得请求,然后把请求给Controller控制器,控制器找到相关的Action,
而Action只需要访问数据,然后将访问的数据经过各种处理之后,将View呈现给浏览器即可。
总而言之:ASP.NET可视化,方便开发人员快速开发,MVC页面与数据逻辑分离,实现了面向对象的思想,方便代码维护、复用、开发。
以上内容为个人参考网上内容后做的简洁描述,若有不当之处,所见者不妨提提意见,以促改进,感谢!
ASP.NET与MVC架构区别总结的更多相关文章
- 一般处理程序、ASP.NET和MVC的区别
这个问题说起来,我有点惭愧 想当初在大学里学的就是ASP.NET WebForms 在实习期间也是用的WebForms来开发网站,然后就觉得.NET开发网站就是用这个开发模式 现在想想都想笑...实在 ...
- Pro ASP.NET Core MVC 第6版 第二章(后半章)
增加动态输出 整个web应用平台的关注点在于构建并显示动态输出内容.在MVC里,控制器负责构建一些数据并将其传给视图.视图负责渲染成HTML. 从控制器向视图传递数据的一种方式是使用ViewBag 对 ...
- Pro ASP.NET Core MVC 第6版 第一章
目录 第一章 ASP.NET Core MVC 的前世今生 ASP.NET Core MVC 是一个微软公司开发的Web应用程序开发框架,它结合了MVC架构的高效性和简洁性,敏捷开发的思想和技术和.N ...
- Asp.net中WebForm 与 MVC的架构区别
ASP.NET Webform 后台代码(behind code) 这种behind code 模式有5个问题,我们用MVC的设计思想来分别解决这些问题 1.基于视图的方案来解决基于行为的需求 从上图 ...
- ASP.NET MVC与ASP.NET Web Form简单区别与适用场景
概论: Asp.net 微软 提供web开发框架或者技术.分Web Form和ASP.NET MVC.下面简单说明各自优缺点及使用场景. Web Form 优点: 1.支持丰富的服务器控件.如:Gr ...
- ASP.NET Webform和ASP.NET MVC的区别
ASP.NET WebForm ASP.NET Webform提供了一个类似于winform的事件响应GUI模型(event-driven GUI),隐藏了HTTP.HTML.JavaScript等细 ...
- 转载ASP.NET MVC 和ASP.NET Web Form简单区别
转载原地址 http://www.cnblogs.com/lei2007/p/3315431.html 概论: Asp.net 微软 提供web开发框架或者技术.分Web Form和ASP.NET ...
- MVC架构在Asp.net中的应用和实现
转载自:http://www.cnblogs.com/baiye7223725/archive/2007/06/07/775390.aspx 摘要:本文主要论述了MVC架构的原理.优缺点以及MVC所能 ...
- ASP.NET MVC与ASP.NET Web Form简单区别
概论: Asp.net 微软 提供web开发框架或者技术.分Web Form和ASP.NET MVC.下面简单说明各自优缺点及使用场景. Web Form 优点: 1.支持丰富的服务器控件.如:Gr ...
随机推荐
- python面向对象(四)之抽象类与接口
学过java的应该知道java有抽象类和接口的那么python呢?(以前写的关于java抽象类的笔记java抽象类与接口) python作为一个动态语言,没有强类型的检查,而是以鸭子类型的方式提现 ...
- ORA-12514: TNS:listener does not currently know of service …
问题描述: 今天数据库查询时遇到问题,具体情形如下截图所示: 问题分析: 看错误明显是TNS监听有问题,要么配置错了,要么数据库没起来.但是当前数据库起来了,也能正常连接使用,因此 考虑被查询对象可能 ...
- 大数据竞赛平台——Kaggle 入门(转)
先马克一下:http://blog.csdn.net/u012162613/article/details/41929171
- 洛谷P1455搭配购买
传送门啦 这是强连通分量与背包的例题 需要注意的就是价值和价格两个数组不要打反了.. 另外 这是双向图!!! #include <iostream> #include <cstdio ...
- Ubuntu CEPH快速安装
一.CEPH简介 不管你是想为云平台提供Ceph 对象存储和/或 Ceph 块设备,还是想部署一个 Ceph 文件系统或者把 Ceph 作为他用,所有 Ceph 存储集群的部署都始于部署一个个 Cep ...
- 34、疯狂java讲义第三版
内容中包含 base64string 图片造成字符过多,拒绝显示
- Radon变换——MATLAB
算法说明: 图像的Radon变换是每个像素的Radon变换的总和. 该算法首先将图像中的像素分成四个子像素,并分别投影每个子像素,如下图所示. 根据投影位置和箱体中心之间的距离,每个子像素的贡献按比例 ...
- USACO 4.3 Buy Low, Buy Lower
Buy Low, Buy Lower The advice to "buy low" is half the formula to success in the stock mar ...
- Bootstrap入门七:按钮
1.可作为按钮使用的标签或元素 为 <a>.<button> 或 <input> 元素添加按钮类(button class)即可使用 Bootstrap 提供的样式 ...
- ref:详解MYSQL数据库密码的加密方式及破解方法
ref:https://blog.csdn.net/paul123456789io/article/details/53081921 MySQL数据库用户密码跟其它数据库用户密码一样,在应用系统代码中 ...