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

MVC的发展的更多相关文章

  1. [.net 面向对象程序设计深入](4)MVC 6 —— 谈谈MVC的版本变迁及新版本6.0发展方向

    [.net 面向对象程序设计深入](4)MVC 6 ——谈谈MVC的版本变迁及新版本6.0发展方向 1.关于MVC 在本篇中不再详细介绍MVC的基础概念,这些东西百度要比我写的全面多了,MVC从1.0 ...

  2. ASP.NET MVC 5 02 - ASP.NET MVC 1-5 各版本特点

    参考书籍:<ASP.NET MVC 4 高级编程>.<ASP.NET MVC 5 高级编程>.<C#高级编程(第8版)>.<使用ASP.NET MVC开发企业 ...

  3. [.net 面向对象程序设计深入](5)MVC 6 —— 构建跨平台.NET开发环境(Windows/Mac OS X/Linux)

    [.net 面向对象程序设计深入](5)MVC 6 —— 构建跨平台.NET开发环境(Windows/Mac OS X/Linux) 1.关于跨平台 上篇中介绍了MVC的发展历程,说到ASP.NET ...

  4. 第一章 Web MVC简介

    Web MVC简介 1.1.Web开发中的请求-响应模型: 在Web世界里,具体步骤如下: 1.  Web浏览器(如IE)发起请求,如访问hao123主页 2.  Web服务器(如Tomcat)接收请 ...

  5. Spring - Web MVC简介

    Web MVC简介 1.1.Web开发中的请求-响应模型: 在Web世界里,具体步骤如下: 1.  Web浏览器(如IE)发起请求,如访问http://www.cnblogs.com 2.  Web服 ...

  6. ASP.NET MVC5(一):ASP.NET MVC概览

    ASP.NET MVC概览 ASP.NET MVC是一种构建Web应用程序的框架,它将一般的MVC(Model-View-Controller)模式应用于ASP.NET框架. 1.ASP.NET MV ...

  7. 自行实现高性能MVC WebAPI

    wcf虽然功能多.扩展性强但是也面临配置忒多,而且restful的功能相当怪异,并且目前没法移植.asp.net core虽然支持webapi,但是功能也相对繁多.配置复杂.就没有一个能让码农们安安心 ...

  8. 自行实现高性能MVC

    wcf虽然功能多.扩展性强但是也面临配置忒多,而且restful的功能相当怪异,并且目前没法移植.asp.net core虽然支持webapi,但是功能也相对繁多.配置复杂.就没有一个能让码农们安安心 ...

  9. SpringMVC(1):Web MVC简介

    原文出处: 张开涛 Web MVC简介 1.1.Web开发中的请求-响应模型: 在Web世界里,具体步骤如下: 1.  Web浏览器(如IE)发起请求,如访问 2.  Web服务器(如Tomcat)接 ...

随机推荐

  1. win7下wubi安装Ubuntu,重装win7后找回Ubuntu启动项

    怀念一下我的win7,使用了将近5年,最近终于慢慢处于崩溃且无法修复的状态. 还是重新安装了. 原本是win7下使用wubi安装Ubuntu.重装win7后,肯定没有了Ubuntu的启动项. 具体恢复 ...

  2. JavaScript- The Good Parts Chapter 3 Objects

    Upon a homely object Love can wink.—William Shakespeare, The Two Gentlemen of Verona The simple type ...

  3. 成员方法的this指针

    1.我们知道成员方法中,有个隐式的this常量指针.考虑,Derived继承的成员方法中this指针的表面类型是什么?子类重写的虚方法中this指针的表面类型是什么? 2.Derived继承的方法,就 ...

  4. MantisBT

    官方网站:http://www.mantisbt.org/ MantisBT is a free popular web-based bugtracking system (feature list) ...

  5. 判断URL是否存在

    判断URL是否存在   判断网址是否存在,可以使用下面方面处理.如果HttpStatusCode为OK,说明网址存在.

  6. Calendar类的基本使用

    import java.util.Calendar; public class CalendarDemo{ public static void main(String[] args) { Calen ...

  7. Storm集群扩容——从单机模式拓展到集群模式,以此类推

    Storm是分布式的实时流处理系统,单机模式肯本不能体现其强大特点,尤其是当需要处理的数据很大很快的 时候,Storm可以随时扩容,而且操作非常简单,编写的应用程序自动负载均衡. 前面已经介绍了如何安 ...

  8. Java并发——线程安全、线程同步、线程通信

    线程安全 进程间"共享"对象 多个“写”线程同时访问对象. 例:Timer实例的num成员,即add()方法是用的次数.即Timer实例是资源对象. class TestSync ...

  9. 读取group by 之外的字段

    序号 姓名 性别 身高 1 张三 男  185 2 李四 女  161 3 王五 女  166 4 赵六 男  178 1.获取男生女生人数 select count(性别) , 性别 from 表名 ...

  10. break continue return 区别

    break语句: break语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch语句.由于它是用来退出循环或者switch语句,所以只有当它出现在这些语句时,这种形式的break语句才 ...