转载原地址 http://www.cnblogs.com/lei2007/p/3315431.html

概论:

Asp.net  微软 提供web开发框架或者技术。分Web Form和ASP.NET MVC。下面简单说明各自优缺点及使用场景。

Web Form

优点:

1.支持丰富的服务器控件。如:GridView和ListView可以绑定数据,从而减少了大量的代码编写

2.支持视图状态,每个控件状态以“隐藏域”的形式存在当前表单页面来达到“有状态”,这就是ViewState

3.基于事件驱动编程, 如:click事件等,aspx页面与cs文件分离,即显示逻辑与处理逻辑分离,便于分工,美工 、编程。不像asp代码混乱

4.学习成本低

缺点:

1.站在项目架构的角度,web form 不是很理想架构模式,尽管可以使用经典的三层架构或者mvp,,但不是最优秀的。

2.性能 viewstate成功解决了asp问题,但同样引入新的问题,viewstate页面存储势必增加页面大小、降低程序性能

3.代码可重用性不好;缺少对并行开发支持,因为aspx页面与cs紧密耦合太高; Seo不友好,因为 url指定具体aspx页面;不利于单元测试,因为使用大量事件处理函数

ASP.NET MVC

Asp.net Mvc架构模式是一种 低耦合、可测试的web应用程序框架,它是基于CLR和成熟的MVC架构构建的。ASP.NET MVC不支持ViewState和服务器控件。

优点:

1.架构降低了程序间的耦合性,M V C,分层,目标明确

2.性能 不支持viewstate,完成html,已于结合jquery使用,提供程序性能

3.支持并行开发,可扩展性好,继承asp.net 特性:表单验证、缓存、会话等。

缺点:

没有viewstate和基于事件的编程,上手慢,学习成本高。

使用场景:

1. 快速开发------>web form

2. 单元测试、性能-------->mvc

3. 大量使用 js、jquery ------> mvc

4. 代码重用性------->mvc

以上结合团队成员技术水平,经验。

转载ASP.NET MVC 和ASP.NET Web Form简单区别的更多相关文章

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

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

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

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

  3. 既生瑜何生亮?ASP.NET MVC VS ASP.NET Web API

    Asp.net MVC 与 Asp.net Web API 区别 在我们开发一些web应用时,我们一样可以在MVC Framework 中使用JsonResult 来返回JSON数据,同样也可以处理一 ...

  4. MVC项目实践,在三层架构下实现SportsStore-09,ASP.NET MVC调用ASP.NET Web API的查询服务

    ASP.NET Web API和WCF都体现了REST软件架构风格.在REST中,把一切数据视为资源,所以也是一种面向资源的架构风格.所有的资源都可以通过URI来唯一标识,通过对资源的HTTP操作(G ...

  5. 返璞归真 asp.net mvc (2) - 路由(System.Web.Routing)

    原文:返璞归真 asp.net mvc (2) - 路由(System.Web.Routing) [索引页] [源码下载] 返璞归真 asp.net mvc (2) - 路由(System.Web.R ...

  6. 返璞归真 asp.net mvc (11) - asp.net mvc 4.0 新特性之自宿主 Web API, 在 WebForm 中提供 Web API, 通过 Web API 上传文件, .net 4.5 带来的更方便的异步操作

    原文:返璞归真 asp.net mvc (11) - asp.net mvc 4.0 新特性之自宿主 Web API, 在 WebForm 中提供 Web API, 通过 Web API 上传文件, ...

  7. 返璞归真 asp.net mvc (10) - asp.net mvc 4.0 新特性之 Web API

    原文:返璞归真 asp.net mvc (10) - asp.net mvc 4.0 新特性之 Web API [索引页][源码下载] 返璞归真 asp.net mvc (10) - asp.net ...

  8. ASP.NET MVC 提供与访问 Web Api

    ASP.NET MVC 提供与访问 Web Api 一.提供一个 Web Api 新建一个项目,类型就选 "Web Api".我用的是MVC5,结果生成的项目一大堆东西,还编译不过 ...

  9. [转帖]Asp.net MVC 与 Asp.net Web API 区别

    Asp.net MVC 与 Asp.net Web API 区别 https://www.cnblogs.com/viktor988/ https://www.cnblogs.com/terry283 ...

随机推荐

  1. c++ 成员指针函数 实现委托----跨平台实现(复杂)

    牛逼: c++ 牵涉到的技术细节太多了,为了实现一个委托,他妈都搞到汇编里面去了... 总结 为了解释一小段代码,我就得为这个语言中具有争议的一部分写这么一篇长长的指南.为了两行汇编代码,就要做如此麻 ...

  2. objective-c 在线视频 学习资料...

    ---视频 http://www.lanou3g.com/newslist.php?cid=7 http://edu.51cto.com/lesson/id-15489.html http://www ...

  3. javascript中实现sleep的两种方式

    最近在js中要使用到类似于C++中的sleep函数(让cpu休眠).但是js是不可能让cpu休眠,所以可以通过下面的两种方式模拟sleep函数. 方式一:使用setTimeout函数代替.如果在一个循 ...

  4. editplus的配置文件来支持sql语法高亮【转】

      editplus默认是没有sql语法高亮的,原因是它的内部没有sql.stx的这样一个语法文件 我们自己在 EditPlus 的安装目录下面新建一个文件名为sql.stx,然后打开editplus ...

  5. IE Web 开发支持将迁移到 StackOverflow

    http://stackoverflow.com/questions/tagged/internet-explorer

  6. P114、面试题17:合并两个排序的链表

    题目:输入两个递增排序的链表,合并这两个链表并使新链表中的结点仍然是按照递增顺序的.struct ListNode{      int    m_nKey;      ListNode*    m_p ...

  7. 在Tomcat上配置CAS 自己的体验

    演示环境 本文演示过程在同一个机器上的(也可以在三台实体机器或者三个的虚拟机上),环境如下: windows732位 JDK 1.6.0_18 Tomcat 6.0.29 CAS-server-3.4 ...

  8. 如何写mysql的定时任务

     什么是事件: 一组SQL集,用来执行定时任务,跟触发器很像,都是被动执行的,事件是因为时间到了触发执行,而触发器是因为某件事件(增删改)触发执行: 查看是否开启: show variables li ...

  9. Codeforces 380A - Sereja and Prefixes

    原题地址:http://codeforces.com/problemset/problem/380/A 让期末考试整的好久没有写题, 放假之后由于生病也没怎么做,新年的第一场CF也不是那么在状态,只过 ...

  10. apache开源项目--Derby

    Apache Derby是Apache软件基金会所研发的开放源码数据库管理系统:由于Derby是一个纯Java程式,因此只需要操作系统支援Java虚拟机,Derby便可执行. Derby是特别地为Ja ...