asp.net mvc 点滴 一 asp.net mvc vs asp.net web forms

简介:

MVC模式是一个大家很熟悉的设计模式,微软的asp.net mvc framework是给asp.net web forms提供了一个可替换的asp.net方案。

  1. Models:Model对象是程序的数据域,主要是为了存储程序的状态信息,经常的数据会存放到数据库中。
  2. Views:View是显示程序UI的,UI通过Model数据创建的,这里要说一下Model在一些小的应用里只是一个逻辑上的概念,不一定有一个物理的存在。
  3. Controllers: Controllers是通过Model工作,Controllers包含应用程序逻辑的操作模式,处理用户交互,并选择View显示到浏览器

asp.net mvc framework的代码是在命名空间System.Web.Mvc中的,它是System.Web命名空间的一部分。基本上以后也是.net的核心,asp.net mvc的好处可以把一个应用可以分成几块不同部分-业务逻辑,UI逻辑和输入逻辑,达到松耦合的目的。这样便于单元测试,我们也知道传统的asp.net web forms的单元测试是很麻烦的。

asp.net mvc vs asp.net web forms

那我们什么时候选择用asp.net mvc,什么时候选用asp.net web forms呢?

老外有了一张图表可以做个参考 这里是我的翻译:

需求 得分 Selection
干净的HTML

+4

 
使用RAD(快速应用程序开发)设计

-5

 
使用TDD(测试驱动开发)

+8

 
可测试性

+7

 
数据依赖应用(??)Data-heavy application

-10

 
从Web Forms升级

-25

 
需要和windows froms程序相同的事件驱动模型

-7

 
在敏捷开发团队工作

+4

 
需要分离模块开发

+10

 
建立一个概念证明或原型?? Creating a proof of concept or prototype

-6

 
SEO-搜索引擎优化

+3

 
RESTful interface

+3

 
需要保存请求状态

-2

 
创建一个Internet应用

+3

 
创建一个Intranet应用

-3

 
需要通过mobile,web,和REST API在相同的应用中支持多个视图

+7

 
需要使用第三方的asp.net web forms的控件

-10

 
需要控制URL的生成

+5

 

根据你项目的要求 对应旁边的分数进行相加 得到的结果 对照下面的分数 可以做个选择了:

分数 推理

< -50

显而易见 使用Web Forms

-25

强烈推荐使用Web Froms

-10

推荐使用Web Forms

-3

基本推荐使用Web Forms

0

Web Forms 和 MVC随便取

+3

基本 MVC

+10

推荐MVC

+25

强烈MVC

> +50

显而易见 使用MVC

这个表 基本上是歪歪出来的,使用需谨慎


本文转自 lu xu 博客园博客,原文链接:http://www.cnblogs.com/dotLive/archive/2009/04/23/1441781.html   ,如需转载请自行联系原作者


相关文章
|
开发框架 前端开发 JavaScript
ASP.NET Web Pages - 教程
ASP.NET Web Pages 是一种用于创建动态网页的开发模式,采用HTML、CSS、JavaScript 和服务器脚本。本教程聚焦于Web Pages,介绍如何使用Razor语法结合服务器端代码与前端技术,以及利用WebMatrix工具进行开发。适合初学者入门ASP.NET。
|
监控 前端开发 API
一款基于 .NET MVC 框架开发、功能全面的MES系统
一款基于 .NET MVC 框架开发、功能全面的MES系统
1004 5
|
开发框架 .NET PHP
ASP.NET Web Pages - 添加 Razor 代码
ASP.NET Web Pages 使用 Razor 标记添加服务器端代码,支持 C# 和 Visual Basic。Razor 语法简洁易学,类似于 ASP 和 PHP。例如,在网页中加入 `@DateTime.Now` 可以实时显示当前时间。
|
开发框架 前端开发 .NET
VB.NET中如何利用ASP.NET进行Web开发
在VB.NET中利用ASP.NET进行Web开发是一个常见的做法,特别是在需要构建动态、交互式Web应用程序时。ASP.NET是一个由微软开发的开源Web应用程序框架,它允许开发者使用多种编程语言(包括VB.NET)来创建Web应用程序。
540 6
|
开发框架 监控 前端开发
在 ASP.NET Core Web API 中使用操作筛选器统一处理通用操作
【9月更文挑战第27天】操作筛选器是ASP.NET Core MVC和Web API中的一种过滤器,可在操作方法执行前后运行代码,适用于日志记录、性能监控和验证等场景。通过实现`IActionFilter`接口的`OnActionExecuting`和`OnActionExecuted`方法,可以统一处理日志、验证及异常。创建并注册自定义筛选器类,能提升代码的可维护性和复用性。
442 3
|
开发框架 .NET 中间件
ASP.NET Core Web 开发浅谈
本文介绍ASP.NET Core,一个轻量级、开源的跨平台框架,专为构建高性能Web应用设计。通过简单步骤,你将学会创建首个Web应用。文章还深入探讨了路由配置、依赖注入及安全性配置等常见问题,并提供了实用示例代码以助于理解与避免错误,帮助开发者更好地掌握ASP.NET Core的核心概念。
555 3
|
开发框架 前端开发 JavaScript
ASP.NET MVC 教程
ASP.NET 是一个使用 HTML、CSS、JavaScript 和服务器脚本创建网页和网站的开发框架。
592 7
|
存储 开发框架 前端开发
ASP.NET MVC 迅速集成 SignalR
ASP.NET MVC 迅速集成 SignalR
450 0
|
开发框架 前端开发 .NET
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
ASP.NET CORE 3.1 MVC“指定的网络名不再可用\企图在不存在的网络连接上进行操作”的问题解决过程
1066 0
|
存储 开发框架 前端开发
[回馈]ASP.NET Core MVC开发实战之商城系统(五)
经过一段时间的准备,新的一期【ASP.NET Core MVC开发实战之商城系统】已经开始,在之前的文章中,讲解了商城系统的整体功能设计,页面布局设计,环境搭建,系统配置,及首页【商品类型,banner条,友情链接,降价促销,新品爆款】,商品列表页面,商品详情等功能的开发,今天继续讲解购物车功能开发,仅供学习分享使用,如有不足之处,还请指正。
699 0