MVC自学系列之一(MVC入门篇)
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入门篇)的更多相关文章
- 学习笔记之盘一盘 Python 系列 1 & 2 - 入门篇
盘一盘 Python 系列 1 & 2 - 入门篇 https://mp.weixin.qq.com/s?__biz=MzIzMjY0MjE1MA==&mid=2247486473&a ...
- 新注册第一帖----------------------乱码新手自学.net 之Linq 入门篇
作为一个业余开发,断断续续学.net/c#也有不少日子了, 学习过程中,不断忘了学,学了忘,这让我很苦恼. 以前学习过程中,我总是在笔记本中记录下来知识要点,这么久下来,笔记本都写了四五本了. 然而, ...
- .NET高级调试系列-Windbg调试入门篇
Windbg是.NET高级调试领域中不可或缺的一个工具和利器,也是日常我们分析解决问题的必备.准备近期写2篇精华文章,集中给大家分享一下如果通过Windbg进行.NET高级调试. 今天我们来一篇入门的 ...
- MVC自学系列之四(MVC模型-Models)
ASP.NET MVC 提供了一系列工具和特性去使用仅仅定义的对象模型.你可以坐下来好好思考你将要解决的问题,并且写好C#类,当你准备好时就可以使用MVC提供的工具去为每一个实体构建标准的index. ...
- MVC自学系列之三(MVC视图-Views)
View的约定 1.根据约定,Views目录下包含着每一个与Controller同名但是没有像Controller后缀的文件夹:因此对于控制器HomeController就对应在views目录下有个目 ...
- MVC自学系列之二(MVC控制器-Controllers)
Controllers的职责 1.MVC模式中的Controllers的职责是对用户的输入做出响应,对用户的输入在实体上做一些变化.它关心的是应用的流动,处理传入的数据,并给相关的View提供数据 ...
- C# MVC 自学笔记—2 MVC Movie简介
MVC Movie是微软官方的一个MVC入门项目,我们可以跟着这个项目来实践入门 这是官方地址 http://www.asp.net/mvc/tutorials/mvc-4/getting-start ...
- Azure Event Bus 技术研究系列1-Event Hub入门篇
前两个系列研究了Azure IoT Hub和Azure Messaging.最近准备继续研究Azure Event Bus,即Azure的事件中心.首先, Azure Event Hub的官方介绍: ...
- Azure Event Hub 技术研究系列1-Event Hub入门篇
前两个系列研究了Azure IoT Hub和Azure Messaging.最近准备继续研究Azure Event Hub,即Azure的事件中心.首先, Azure Event Hub的官方介绍: ...
随机推荐
- mybatis04 根据用户名称模糊查询用户信息
根据用户名称模糊查询用户信息可能返回多条记录. 1.1.1User.xml 编码 如果用%进行模糊查询,#{}表示一个占位符会被翻译为一个?号(SELECT * FROM USER WHERE id= ...
- LabVIEW系列——自定义错误
1.自定义错误代码文本文件在labview中三处: a).E:\Program Files\National Instruments\LabVIEW 8.6\project\errors ...
- spring beans源码解读之--bean definiton解析器
spring提供了有两种方式的bean definition解析器:PropertiesBeanDefinitionReader和XmLBeanDefinitionReader即属性文件格式的bean ...
- HDU2019JAVA
数列有序! Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)Total Submissi ...
- NDK开发之获得域和方法描述符
在NDK开发之调用方法和NDK开发之访问域两篇博客中,我们在获得域ID和方法ID时都需要一个叫做描述符的参数,那么在实际开发中我们怎么知道我们要调用的域或者方法的描述符呢? 一个简单的方法就是使用Ja ...
- 为什么要设置Java环境变量(详解)
关于java环境变量配置讲解: 1. PATH环境变量.作用是指定命令搜索路径,在shell下面执行命令时,它会到PATH变量所指定的路径中查找看是否能找到相应的命令程序.我们需要把 jdk安装目录下 ...
- webstorm 如何配置git
2016-09-22 15:00:25 补充js 操作后 发现工具自动生成了两个文件,如果提交到git上 会造成不必要的麻烦,看看怎么去掉产生这个的原因吧! 去掉对应的监听:http://fronte ...
- 自己做的demo---c语言的基本语法,过阵子可以重新写一些算法跟数据结构了
//输入a,b,输出a+b /*#include<stdio.h> int main() { int a,b; scanf("%d%d",&a,&b); ...
- Unity5.0 手动激活
提供Unity5.0.1.f1(32-bit)下载http://pan.baidu.com/s/1bg5sDK 密码 ns75 有时候会发现,用激活工具是激活不了的,这个时候就要手动激活,其实个人觉得 ...
- JavaScript的垃圾回收
来自MDN,Memory Management 简介 在底层语言中,比如C,有专门的内存管理机制,比如malloc() 和 free().而Javascript是有垃圾回收(garbage colle ...