转载ASP.NET MVC 和ASP.NET Web Form简单区别
2016-07-13 13:48
375 查看
转载原地址 http://www.cnblogs.com/lei2007/p/3315431.html
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页面;不利于单元测试,因为使用大量事件处理函数
优点:
1.架构降低了程序间的耦合性,M V C,分层,目标明确
2.性能 不支持viewstate,完成html,已于结合jquery使用,提供程序性能
3.支持并行开发,可扩展性好,继承asp.net 特性:表单验证、缓存、会话等。
缺点:
没有viewstate和基于事件的编程,上手慢,学习成本高。
2. 单元测试、性能-------->mvc
3. 大量使用 js、jquery ------> mvc
4. 代码重用性------->mvc
以上结合团队成员技术水平,经验。
概论:
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 form2. 单元测试、性能-------->mvc
3. 大量使用 js、jquery ------> mvc
4. 代码重用性------->mvc
以上结合团队成员技术水平,经验。
相关文章推荐
- Web API 强势入门指南
- ASP.NET处理301重定向方法 带示例 (demo)
- 转载 asp.net中ViewState的用法详解
- ASP.NET Web API - ASP.NET MVC 4 系列
- asp.net项目与开源单点登录项目CAS的结合
- asp.net项目与开源单点登录项目CAS的结合
- raspberry pi 2 finalspeed 自启服务
- ASP.NET MVC 4.0的Action Filter
- Asp.net core 通过Models 生成数据库的方法
- Asp.net core 通过Models 生成数据库的方法
- 【无私分享:从入门到精通ASP.NET MVC】从0开始,一起搭框架、做项目 (12)程序与数据备份
- 实例简述Spring AOP之对AspectJ语法的支持
- 实例简述Spring AOP之对AspectJ语法的支持
- ASP.NET Core框架揭秘(持续更新中…)
- 在ASP.NET中如何运行后台任务
- ASP.NET Core "完整发布,自带运行时" 到jexus
- 【ASP】Window2008站点安全设置,IIS7/IIS7.5中目录执行权限的设置方法
- 使用 dotnet watch 开发 ASP.NET Core 应用程序
- asp.net mvc本地程序集和GAC的程序集冲突解决方法
- PiLC - S7 PLC for Raspberry Pi