MVC学习笔记1-MVC家族间的区别
ASP.NET下的MVC从原始的1.0走到2.0,再到3.0,现在走到4.0,也许明年5.0就问世了,先不管那些,那说说这些MVC在ASP.NET是如何变化发展的。对于。net编程人员来说可能会很熟悉,也有可能不熟悉,我过去做。net一年多,没听说过这个概念,但是昨天看别人的博客(博主书这是。net一个公司的面试题),忽然对这个问题产生了兴趣,于是研究研究,研究的不是很深,供初学者有个浅显的认识。欢迎高手拍砖指导,希望能把一篇入门的文章写的尽善尽美。
Asp.netMVC理解:ASP.NETMVC Framework是微软在ASP.NET中所添加的一组类别库,这组类库可以使用Model-View-Controller的设计模式来开发ASP.NET的应用程序。MVC特色和优点在这不详细介绍了(ASP.NET MVC:http://baike.baidu.com/view/1980463.htm)
MVC2.0
MVC2.0的新特性主要有:
1.Areas:允许组织多个逻辑层,便于团队开发。
2.UIHelpers:可以使用strongly-typedhelpers修改和展示数据,更易于维护旧有程序,从而提供高开发效率。
3.服务器端验证:可以使用声明式注解定义模型的验证规则。
4.客户端验证:自动产生基于模型验证的客户端验证。
MVC3.0
新特性重点解析:
ASP.NETMVC3.0带来了一个新名为Razor视图引擎,其提供以下优点:
一、新加技术或属性
1. 支持多视图引擎:在新建项目对话框中,你可以指定项目默认的视图引擎。
2. ActionResult类型:MVC3.0中ActionResult新添加的
3. 远程验证:一个新标签RemoteAttribute对jQuery.Validate插件的远程验证提供支持。
二、属性的改进:
1. 新的ViewBag属性:将MVC2.0中的ViewData属性改变为MVC3.0中ViewBag来更加简单的完成。
三、技术的改进:
1. 控制器改进:允许你将过滤器加入到GlobalFilters集合中区来创建全局的过滤器,也就是说提供过滤器等功能例如:Filter功能,在执行Action之前先执行了转化字符集的filter或者监听器等,纵向切入型技术。
2. JavaScript和Ajax改进:新添Javascript库,验证助手默认使用的是jQuery.Validate插件完成。
3. ValidationAttribute类:在。NETFramework4中改进了ValidationAttribute类支持新的IsValid重载
4. 默认启用了客户端验证
5. Model验证的改进
6. 接口验证
MVC4.0
重点分析:新添WebAPI,Mobile Application,以及Single Page Application.
WebAPI与SinglePage Application之中,目前view只支持Razer语法。
WebAPI:其实就是一中建立在RESTful服务基础上的平台,当然一定是HTTP的协定。当您建立好一个空的Web API的MVC项目后,在Controller中你会出现一个新的类别ApiController设定,它先帮你制作 Get(), Post(),Put(), Delete() 等方法,其中 Get() 有一个是Overloading传回IEnumerable<T> 的方法,这也是Web API主要强大的特性之一,强行别的HttpWebRequest.
首先JQuery以及其他的一些脚本版本进行了升级,当然也移除了微软自己的AJAX库。使用HTML5来布局。
ASP.NET Web API(支持Rest风格接口)
ASP.NET Single Page Application(单页面应用程序)
Enhancements to Default Project Templates(完善了项目模板)
Mobile Project Template(手机项目模板)
当昨天看到那片文章的时候自己感觉:不怕不知道就怕不知道。虽然这些特征都是一些技术的更新,没有技术的应用,感觉很空,但是当有人问你这个问题的时候,自己又说不出来。哎呀,还是好好学习写总结吧,不知道的太多了,昨天刚听说ASP.NET MVC3.0,自己学ASP.NET的时候也没有听说过这个东西,今天听说了,也了解到了,微软公司的FrameWork4.5框架很强大,自己不懂的还很多很多。
摘自:http://blog.csdn.net/ymnets/article/details/7653144
MVC学习笔记1-MVC家族间的区别的更多相关文章
- Spring MVC 学习笔记 spring mvc Schema-based configuration
Spring mvc 目前支持5个tag,分别是 mvc:annotation-driven,mvc:interceptors,mvc:view-controller, mvc:resources和m ...
- 1.2(Spring MVC学习笔记) Spring MVC核心类及注解
一.DispatcherServlet DispatcherServlet在程序中充当着前端控制器的作用,使用时只需在web.xml下配置即可. 配置格式如下: <?xml version=&q ...
- MVC学习笔记:MVC实现用户登录验证ActionFilterAttribute用法并实现统一授权
在项目下新建一个文件夹来专门放过滤器类,首先创建一个类LoginFilter,这个类继承ActionFilterAttribute.用来检查用户是否登录和用户权限.: using System; us ...
- ASP.NET MVC 学习笔记之 MVC + EF中的EO DTO ViewModel
EO: Entity Object 就是EF中的实体类, 对EO的操作会对数据库产生影响. DTO: Data Transfer Object 数据传输对象.用于在各层之间传递数据的普通类,DTO有哪 ...
- ASP.NET MVC 学习笔记之View 和Redriect的区别
首先先说一下Redriect 和RedirectToAction 两个没什么区别,都是向浏览器发送302 Found相应,再有浏览器向对应的url进行请求 只是参数的意义不同而已 再说Redirect ...
- ASP.NET MVC 学习笔记-2.Razor语法 ASP.NET MVC 学习笔记-1.ASP.NET MVC 基础 反射的具体应用 策略模式的具体应用 责任链模式的具体应用 ServiceStack.Redis订阅发布服务的调用 C#读取XML文件的基类实现
ASP.NET MVC 学习笔记-2.Razor语法 1. 表达式 表达式必须跟在“@”符号之后, 2. 代码块 代码块必须位于“@{}”中,并且每行代码必须以“: ...
- ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET MVC 学习笔记-6.异步控制器 ASP.NET MVC 学习笔记-5.Controller与View的数据传递 ASP.NET MVC 学习笔记-4.ASP.NET MVC中Ajax的应用 ASP.NET MVC 学习笔记-3.面向对象设计原则
ASP.NET MVC 学习笔记-7.自定义配置信息 ASP.NET程序中的web.config文件中,在appSettings这个配置节中能够保存一些配置,比如, 1 <appSettin ...
- MVC学习笔记索引帖
[MVC学习笔记]1.项目结构搭建及单个类在各个层次中的实现 [MVC学习笔记]2.使用T4模板生成其他类的具体实现 [MVC学习笔记]3.使用Spring.Net应用IOC(依赖倒置) [MVC学习 ...
- ASP.NET MVC学习笔记-----Filter2
ASP.NET MVC学习笔记-----Filter(2) 接上篇ASP.NET MVC学习笔记-----Filter(1) Action Filter Action Filter可以基于任何目的使用 ...
- ASP.NET MVC学习笔记-----Filter
ASP.NET MVC学习笔记-----Filter(1) Filter类型 接口 MVC的默认实现 Description Authorization IAuthorizationFilter Au ...
随机推荐
- 三层——vb.net版
经过不懈的努力,我的vb.net 版的三层登陆终于实现了.下面将我的成果向大家展示一下. 原则 vb.net的三层登陆跟C#的三层登陆的思想是一样的都是将系统分层--U层只负责与用户 ...
- python 模块加载错误总结
在运行yum时提示如下错误 There was a problem importing one of the Python modules required to run yum. The error ...
- Flume使用说明
关于Flume,官方定义如下: Apache Flume is a distributed, reliable, and available system for efficiently collec ...
- 浅谈Activiti Modeler 的扩展
为什么要扩展 最近项目打算用activiti工作流中activiti modeler来做模块的可视化订阅,但是原生的activiti任务节点,有一些不符合业务需要,比如 配置项多,属性 ...
- 使用Python实现子区域数据分类统计
目录 前言 geopandas简介 子区域数据分类统计 总结 一.前言 最近碰到一个需求,需要统计某省内的所有市的某数据分布情况信息.现有该省的数据分布情况以及该省的行政区划数据.我通过 ...
- Javascript几种跨域方式总结
在客户端编程语言中如javascript,同源策略规定跨域之间的脚本是隔离的,一个域的脚本不能访问和操作另外一个域的绝大部分属性和方法.只有当两个域具有相同的协议,相同的主机,相同的端口时,我们就认定 ...
- Angular.js之内置过滤器学习笔记
<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...
- iOS开发-APP测试基本流程
1. UI 测试app主要核ui与实际设计的效果图是否一致:交互方面的问题建议,可以先与产品经理确认,确认通过后,才开始让开发实施更改或优化 2. 功能测试根据软件说明或用户需求验证App的各个功能实 ...
- IOS 中openGL使用(使用基准图快速制作滤镜)
Color Lookup Table 在影像处理领域中,当我们想要调整一个影像的色彩时,经常会用到 Color Lookup Table 的技术. 举个简单的例子,如果我们想要让影像中的每个像素的R值 ...
- HTML文档及标签介绍
HTML标签 HTML 标记标签通常被称为 HTML 标签 (HTML tag). HTML标签是由尖括号包含的关键词,比如<html> HTML标签通常是成对出现的,比如<body ...