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架构区别总结的更多相关文章

  1. 一般处理程序、ASP.NET和MVC的区别

    这个问题说起来,我有点惭愧 想当初在大学里学的就是ASP.NET WebForms 在实习期间也是用的WebForms来开发网站,然后就觉得.NET开发网站就是用这个开发模式 现在想想都想笑...实在 ...

  2. Pro ASP.NET Core MVC 第6版 第二章(后半章)

    增加动态输出 整个web应用平台的关注点在于构建并显示动态输出内容.在MVC里,控制器负责构建一些数据并将其传给视图.视图负责渲染成HTML. 从控制器向视图传递数据的一种方式是使用ViewBag 对 ...

  3. Pro ASP.NET Core MVC 第6版 第一章

    目录 第一章 ASP.NET Core MVC 的前世今生 ASP.NET Core MVC 是一个微软公司开发的Web应用程序开发框架,它结合了MVC架构的高效性和简洁性,敏捷开发的思想和技术和.N ...

  4. Asp.net中WebForm 与 MVC的架构区别

    ASP.NET Webform 后台代码(behind code) 这种behind code 模式有5个问题,我们用MVC的设计思想来分别解决这些问题 1.基于视图的方案来解决基于行为的需求 从上图 ...

  5. ASP.NET MVC与ASP.NET Web Form简单区别与适用场景

    概论: Asp.net  微软 提供web开发框架或者技术.分Web Form和ASP.NET MVC.下面简单说明各自优缺点及使用场景. Web Form 优点: 1.支持丰富的服务器控件.如:Gr ...

  6. ASP.NET Webform和ASP.NET MVC的区别

    ASP.NET WebForm ASP.NET Webform提供了一个类似于winform的事件响应GUI模型(event-driven GUI),隐藏了HTTP.HTML.JavaScript等细 ...

  7. 转载ASP.NET MVC 和ASP.NET Web Form简单区别

    转载原地址 http://www.cnblogs.com/lei2007/p/3315431.html 概论: Asp.net  微软 提供web开发框架或者技术.分Web Form和ASP.NET  ...

  8. MVC架构在Asp.net中的应用和实现

    转载自:http://www.cnblogs.com/baiye7223725/archive/2007/06/07/775390.aspx 摘要:本文主要论述了MVC架构的原理.优缺点以及MVC所能 ...

  9. ASP.NET MVC与ASP.NET Web Form简单区别

    概论: Asp.net  微软 提供web开发框架或者技术.分Web Form和ASP.NET MVC.下面简单说明各自优缺点及使用场景. Web Form 优点: 1.支持丰富的服务器控件.如:Gr ...

随机推荐

  1. aarch64_n2

    nodejs-is-dotfile-1.0.2-2.fc26.noarch.rpm 2017-02-12 00:27 9.5K fedora Mirroring Project nodejs-is-e ...

  2. MySQL 5.7.17 Group Relication(组复制)搭建手册【转】

    本博文介绍了Group Replication的两种工作模式的架构.并详细介绍了Single-Master Mode的部署过程,以及如何切换到Multi-Master Mode.当然,文末给出了Gro ...

  3. 转 Java的 BigDecimal类型比较大小

    这个类是java里精确计算的类 1.比较对象是否相等,一般的对象用equals,但是BigDecimal比较特殊,举个例子 BigDecimal a = new BigDecimal.valueOf( ...

  4. vs2012 连接oracle11g 及数据的insert及select 的总结

    下载链接Oracle 11g所需的驱动ODTwithODAC1120320_32bit,下载链接为http://www.oracle.com/technetwork/topics/dotnet/uti ...

  5. 21 JSON and Go go语言和json

    JSON and Go 25 January 2011 Introduction JSON (JavaScript Object Notation) is a simple data intercha ...

  6. 利用CSS函数calc(...)实现Web页面左右布局

    前言 因为自己的网站需要,想要做一个左右布局的页面: 左边是导航菜单之类的东西.右边是文档内容(因为最近看的一些软件的文档页面都是这么布局的): 左边固定宽度——300像素.右边使用剩余的宽度: 左边 ...

  7. tf.metrics.accuracy ==>坑货

    tf.metrics.accuracy输出两个值,第一个值为上几步的平均精度,第二值是上几步与该步的精度的平均值. 正常的计算单个batch正确率的代码 self.correct_prediction ...

  8. jenkins中管理用户

    jenkins中管理用户: 管理用户权限

  9. 用html5实现的flappy-bird

    可能网上早就有几个flappy-bird的html5版本啦,到这个时候flappy-bird可能也没有之前那么火了,但是作为一个新手,自己思考,自己动手写一个flappy-bird的demo还是很有成 ...

  10. javacript 实现两个数组的差集

    <script type="text/javascript">      var array1 = [1,2,3,4,5,6,7,8,9];      var arra ...