MVC是如何适用于ASP.NET中的

自从2002年ASP.NET 1.0版本的首次发布,就知道ASP.NET和Web Forms是同样一回事。ASP.NET由抽象两层类所支持:

-->System.Web.UI:Web页面层,包括服务控件、ViewState等等

-->System.Web:提供了基本的web堆栈,包括模块、处理器、HTTP处理等等

MVC历史版本

-->1.0版

2007年2月,Scott Guthrie写出了ASP.NET MVC的核心代码,虽然只用几百行,但是它给web开发者提供的前途和潜力却是无限巨大的。真正官方MVC1.0版本的的发布实在2009年3月13日

-->2.0版

MVC2.0是在1.0版发布后一年,也就是2010年3月发布的。它主要的特性如下:

1.通过定制模板来自动搭建的UI helper

2.在客户端和服务端对model的基础校验

3.强类型HTML Helper

4.改善了VS工具

从1.0版的改进

1.支持对大型的应用进行区域的划分

2.异步controllers的支持

3.支持渲染页面的一部分

4.许多新的帮助功能、公共类和API的改善

-->3.0版本

ASP.NET MVC 3在MVC 2发布10个月后发布的,以下是MVC 3的一些重要特性

1.Razor视图引擎

2.对.Net 4数据注释的支持

3.改善了model校验

4.对于从属分离和全局行为过滤有了更好更灵活的支持

5.对于不冲突的javascript,jQuery Validation,json有了更好的支持

6.使用Nuget来发布软件和从平台的方方面面来控制从属关系

-->4.0版本

1.ASP.NET Web API

2.默认项目模板的增强

3.使用jQuery Mobile 的手机项目模板

4.显示实体

5.对于异步控制器的任务支持

6.绑定与压缩

7.包含一些新的开源类库

①Json.Net:包含一些对json数据的处理

②DotNetOpenAuth:单点登录

8.新特性

①逻辑配置移动到App_Start中

②空的MVC项目模板

③在任何地方添加控制器Controller

  约定大于配置

约定能够帮助你与其他开发人员清晰的交流,而不需要你去向他们一遍又一遍地解释你程序的结构;MVC设计模式由标准语言建立,它们采用了固有的约定,从而开发人员可以很容易理解你的代码,即使是在很大的应用软件中,它们的约定也不会改变

 

 

MVC自学系列之一(MVC入门篇)的更多相关文章

  1. 学习笔记之盘一盘 Python 系列 1 & 2 - 入门篇

    盘一盘 Python 系列 1 & 2 - 入门篇 https://mp.weixin.qq.com/s?__biz=MzIzMjY0MjE1MA==&mid=2247486473&a ...

  2. 新注册第一帖----------------------乱码新手自学.net 之Linq 入门篇

    作为一个业余开发,断断续续学.net/c#也有不少日子了, 学习过程中,不断忘了学,学了忘,这让我很苦恼. 以前学习过程中,我总是在笔记本中记录下来知识要点,这么久下来,笔记本都写了四五本了. 然而, ...

  3. .NET高级调试系列-Windbg调试入门篇

    Windbg是.NET高级调试领域中不可或缺的一个工具和利器,也是日常我们分析解决问题的必备.准备近期写2篇精华文章,集中给大家分享一下如果通过Windbg进行.NET高级调试. 今天我们来一篇入门的 ...

  4. MVC自学系列之四(MVC模型-Models)

    ASP.NET MVC 提供了一系列工具和特性去使用仅仅定义的对象模型.你可以坐下来好好思考你将要解决的问题,并且写好C#类,当你准备好时就可以使用MVC提供的工具去为每一个实体构建标准的index. ...

  5. MVC自学系列之三(MVC视图-Views)

    View的约定 1.根据约定,Views目录下包含着每一个与Controller同名但是没有像Controller后缀的文件夹:因此对于控制器HomeController就对应在views目录下有个目 ...

  6. MVC自学系列之二(MVC控制器-Controllers)

      Controllers的职责 1.MVC模式中的Controllers的职责是对用户的输入做出响应,对用户的输入在实体上做一些变化.它关心的是应用的流动,处理传入的数据,并给相关的View提供数据 ...

  7. C# MVC 自学笔记—2 MVC Movie简介

    MVC Movie是微软官方的一个MVC入门项目,我们可以跟着这个项目来实践入门 这是官方地址 http://www.asp.net/mvc/tutorials/mvc-4/getting-start ...

  8. Azure Event Bus 技术研究系列1-Event Hub入门篇

    前两个系列研究了Azure IoT Hub和Azure Messaging.最近准备继续研究Azure Event Bus,即Azure的事件中心.首先, Azure Event Hub的官方介绍: ...

  9. Azure Event Hub 技术研究系列1-Event Hub入门篇

    前两个系列研究了Azure IoT Hub和Azure Messaging.最近准备继续研究Azure Event Hub,即Azure的事件中心.首先, Azure Event Hub的官方介绍: ...

随机推荐

  1. 2440test 裸机測试 调试不进main 设置改动方法

           2440test没进main函数并非跑飞.bin文件已经烧写到开发板里了的 而是没选择载入文件,导致不能调试程序文件 主要设置例如以下:

  2. 1个小时学会ReactiveCocoa基本使用

    来源:朱凯奇 链接:http://www.jianshu.com/p/5d966074741a 1.ReactiveCocoa简介 ReactiveCocoa(简称为RAC),是由Github开源的一 ...

  3. Java-struts2 通过MODEL接收表单数据的方法

    接收数据的时候经常会出问题: 1.记住action = “”到的路径,最好用全路径 <a href="../Struts/user/hello?user.name=xxzzzzzzzz ...

  4. 无法加载协定为“ServiceReference1.ReportWsSoap”的终结点配置部分,因为找到了该协定的多个终结点配置。请按名称指示首选的终结点配置部分。

    前言 引用websevice时,有时会出现如下错误: 异常详细信息: System.InvalidOperationException: 无法加载协定为“ServiceReference1.Repor ...

  5. phpMyAdmin教程 之 创建新用户/导入/导出数据库

    盗用了被人的教程. 需要看就点击进去吧.复制过来实在是过意不去 http://www.wpdaxue.com/phpmyadmin-import-export-database.html

  6. Javascript基础学习(1)_类型、值和变量

    1.null和undefined ①概念上区别: null是一个特殊的对象,是“非对象”,使用typeof后是object对象 undefined用未定义的值表示更深层次的“空值”,它是变量的一种取值 ...

  7. insert一句话实现插入一条数据并且返回这条数据的某列

    insert into [table] output inserted.columnName values();

  8. doj常用包

    dojo.raise               抛出一个异常 dojo.errorToString将异常转换为字符串 dojo.render      系统环境对象 dojo.hostenv. ...

  9. iOS,长按图片保存实现方法,轻松搞定!

    1.添加手势识别: UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc]initWithTarget:self action:@s ...

  10. 支持H5的一般设置

    1.因为IE8既不支持HTML5也不支持CSS3 Media,所以我们需要加载两个JS文件,来保证我们的代码实现兼容效果: <script src="https://oss.maxcd ...