MVC的发展

时间:2022-09-24 16:04:08

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框架很强大,自己不懂的还很多很多。