概论:

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

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