ASP.NET MVC 01 - ASP.NET概述

本篇目录:

ASP.NET 概述

  1. .NET Framework 与 ASP.NET
  2. ASP.NET MVC简介
  3. ASP.NET的特色和优势
  4. 典型案例

▁▃▅ ASP.NET概述 ▅▃▁


  目前开发B/S系统的主要技术有ASP.NET、JSP、PHP等。其中ASP.NET是基于.NET平台创建动态网页的一种服务器端技术,使用它可以创建动态可交互的Web页面。

  在Microsoft的.NET战略中,ASP.NET是其中一项的技术,从图1中可以看出ASP.NET是.NET Framework的重要组成部分。

图1:.NET Framework与ASP.NET

1. NET Framework与ASP.NET

  .NET Framework包括两个重要组件:.NET Framework类库和公共语言运行时。编写ASP.NET页面需要用到.NET Framework的框架类库和公共语言运行时。

  ASP.NET、.NET Framework及Visual Studio一直以来都在不断地提高,基本每次.NET语言的版本更新,都会带来ASP.NET版本的更新,这些更新包括ASP.NET类库的不断扩充,不断纳入各种新的语言特性等。

  在ASP.NET的版本更新过程中,具有革命性意义的是ASP.NET 2.0。.NET Framework 2.0的出现标志着.NET Framework真正走向成熟,同时也带来了ASP.NET技术的成熟和稳定,ASP.NET 3.5又加入了C# 3.0、LINQ、REST等元素,在ASP.NET 4.0中正式引入了ASP.NET MVC。

  同时,Visual Studio也在不断地版本升级中,对ASP.NET开发的支持也越来越强劲,在Visual Studio 2010中,代码编写中的只能提示、Web部署、多显示器的支持、TDD支持、内嵌本地jQuery等特性都趋于完美。2012年8月Microsoft发布了.NET Framework 4.5,它支持新的HTML5表单类型,与之对应的Visual Studio 2012中,新的编辑器提供了对HTML5和CSS3的全面支持,本系列内容采用的是ASP.NET 4/5、.NET Framework 4/4.5、Visual Studio 2013。

  具体版演进历程如下表1所示:

表1:ASP.NET、.NET Framework、Visual Studio版本演进历程

时间

ASP.NET 版本

.NET Framework 版本

Visual Studio 版本

ASP.NET主要功能点

2002年

1.0

1.0

Visual Studio .NET 2002

核心功能

2003年

1.1

1.1

Visual Studio .NET 2003

移动设备控件、自动化输入验证

2005年

2.0

2.0

Visual Studio 2005

新的数据控件、主题、皮肤、Web部件

2008年

3.5

3.0

Visual Studio 2008

Ajax、LINQ支持

2010年

4.0

4.0

Visual Studio 2010

ASP.NET MVC

2012年

4.5

4.5

Visual Studio 2012

HTML5和CSS3支持

2013年

4.5.1

4.5.1

Visual Studio 2013

集成Bootstrap等前端UI

2014年

4.5.2

4.5.2

Visual Studio 2014

说实话,我装上后发现是鸟语版的,而且算是2015的Beta,就卸了坐等2015了

2015

4.6

4.6

Visual Studio 2015

ASP.NET MVC5等升级,集成Xamarin等项目模板

2. ASP.NET MVC简介

  ASP.NET MVC是ASP.NET技术的一个子集,它是ASP.NET技术和MVC模式的完美结合,类似于Java平台的Struts框架。

  在.NET领域,最初受Ruby On Rails的启发,.NET开源界发布了.NET世界的第一个MVC架构 – MonoRails。

  2007年开始,Microsoft公司开始产生开发一个MVC框架的想法,这种想法最终促成了ASP.NET MVC的诞生。

  ASP.NET MVC第一个正式版本ASP.NET MVC 1.0于2009年3月发布,时至今日,ASP.NET MVC已经经历了4个较大的版本变化,目前最新的版本是ASP.NET MVC 5。

  ASP.NET MVC各个版本的主要功能,以及和Visual Studio、.NET框架各个版本的关系如表2所示:

表2 – ASP.NET MVC各版本说明

ASP.NET MVC版本

集成的Visual Studio版本

兼容的.NET版本

主要功能点

1.0

Visual Studio 2008

.NET Framework 3.5

核心功能

2.0

Visual Studio 2010

.NET Framework 3.5和.NET Framework 4

分区项目、模型元数据、模板视图、异步控制等

3.0

Visual Studio 2010

.NET Framework 4

视图引擎 – Razor

Visual Studio 2012

.NET Framework 4和.NET Framework 4.5

4.0

Visual Studio 2012

.NET Framework 4和.NET Framework 4.5

手机模板、单页应用程序等模板、HTML5支持

4.5

Visual Studio 2013

.NET Framework 4 和 .NET Framework 4.5

Bootstrap等前端UI,详细读者自行Google。

4.5.1

Visual Studio 2013

.NET Framework 4和 .NET Framework 4.5.1

4.5.2

Visual Studio 2014

.NET Framework 4 和.NET Framework 4.5.2

4.6

Visual Studio 2015

.NET Framework 4和.NET Framework 4.6

ASP.NET MVC5等,集成Xamarin等项目模板

说明:

  (1) Visual Studio 2010之后的各个版本都直接集成了响应的ASP.NET MVC项目模板,但是各个版本的ASP.NET MVC仍然可以独立安装。

       最早的ASP.NET MVC 1.0可以在Visual Studio 2008上安装。

  (2) .NET MVC技术是ASP.NET技术的一个分支,和它并列的技术成为ASP.NET WebForm,不过ASP.NET WebForm历史较长,它是ASP.NET诞生之初的默认技术,因此有时候说ASP.NET,其实指的就是“ASP.NET WebForm”。

       ASP.NET WebForm延续了WinForm的开发理念,通过简单的拖拽就可以完成一些简单的动态页面。

3. ASP.NET的特色和优势

  ASP.NET技术延续了Microsoft技术的一贯特点,就是对开发者友好、开发效率高,除了这些,ASP.NET还具备了以下特点:

  • 方便设置断电,易于调试。
    一直以来,在站点的开发中如何调试都是领开发者头疼的一件事情,因为使用的Web服务器往往不受IDE的约束,而ASP.NET运行的Web服务器都是有Microsoft开发的,具有先天性优势。
    Visual Studio中自带的断电调试功能,尤其是对Javascript的断点调试,使代码的排错和查看更贱便捷。
  • 编译后执行,运行效率提高。
    代码编译是指将代码“编译”成机器语言。但在ASP.NET中并未直接编译成机器语言,而是先编译为微软中间语言(Microsoft Intermediate Language, MSIL或IL),然后由即使(Just-In-Time,JIT)编译器进一步编译成机器语言。

    其中,JIT编译器并非一次完全编译,而是调用哪部分代码就编译哪部分,这样可以使启动时间更短。
    同时,编译好的代码再次运行不需要重新编译,极大地提高了Web应用程序的性能。

    如图2所示:


图2 ASP.NET页面的编译

4. 典型案例

  正因为ASP.NET有诸多优势,越来越多的企业开始采用该技术作为站点的解决方案,具体如下:

  • 戴尔计算机(http://www.dell.com)
      戴尔公司是一家计算机直销为经营模式的企业,不像联想公司等有店面销售,戴尔公司有的订单都是通过网络或者电话进行销售的。在全球计算机销量排名中,戴尔公司一直都排在前三位。
      戴尔公司网站为了应对每天成千上万的订单,采用了ASP.NET作为站点的解决方案。
  • 当当网(http://www.dangdang.com)
      当当网是全球最大的中文网上书店,随着B2C业务的不断发展,它现在的业务量也越来越大。秉承“鼠标+水泥”的经营模式,当当网所有的产品都是通过网上店铺进行销售的。它采用ASP.NET技术建设的网上店铺,运行一直很稳定。
  • 招商银行(http://cmbchina.com)
      招商银行是中国大陆第一家由企业创办的商业银行,也是中国政府推动金融改革的试点银行。目前,招商银行在中国大陆的110余个城市设有99家分行及853家支行,ASP.NET技术为银行官网承受高负荷流量下的正常访问提供了有效保障。
  • 社区网站(http://myspace.com)
      “MySpace”是一个全球的在线社区,用户可以通过“MySpace”和同学追忆当年,结实专业人士拓展自己的人脉,“MySpace”在2003年注册用户突破1亿。事实证明ASP.NET完全可以应对高标准的企业需求。
  • 问答网站(http://stackoverflow.com)
      “Stack Overflow”是在全球IT界非常受欢迎的技术问答网站,世界各地的程序员都可以在上面交流各种技术问题,目前是实际访问量排名前100位的网站,日均IP访问量达到1千万以上。它是使用ASP.NET MVC3.0构建的系统。

【来自 孤影'Blog:http://www.cnblogs.com/LonelyShadow 亲们,码字不容易,转载请注明出处。】

分类: ASP.NET MVC

MVC 01的更多相关文章

  1. 正式学习MVC 01

    1.新建项目 点击创建新项目,选择ASP.NET web应用程序,对项目进行命名后点击创建. 截图如下: 取消勾选HTTPS配置 可选择空 + mvc 或直接选定MVC 2.目录结构分析 1) App ...

  2. ASP.NET Core MVC 2.x 全面教程_ASP.NET Core MVC 01. 创建项目 +项目结构和配置简介

    新建项目:Tutotial.Web 解决方案名称可以把web去掉 视频里面把git这个选项勾选了.我就不勾选了 dotnet CLI创建项目 首先必须安装好了.net Core的SDK dotnet ...

  3. 第一个MVC模型

    根据慕课网的视频自学来的. 关于MVC的简介和一些常识:http://www.cnblogs.com/jobscn/archive/2011/11/08/2240725.html MVC模式 : MV ...

  4. ASP.NET Core MVC 2.x 全面教程_汇总贴

    Reshaper快捷键盘 快速生成属性:prop Ctrl+. ASP.NET Core MVC 2.x 全面教程:https://www.bilibili.com/video/av38392956 ...

  5. [asp.net mvc 奇淫巧技] 01 - 封装上下文 - 在View中获取自定义的上下文

    我们在asp.net 开发中已经封装了最强大的HttpContext,我们可以在HttpContext中可以获取到几乎任何想获取的东西,也可以在HttpContext写入需要返回客户端的信息.但是这些 ...

  6. spring mvc注解版01

    spring mvc是基于servlet实现的在spring mvc xml版中已经说过了,注解版相较于xml版更加简洁灵活. web项目的jar包: commons-logging-1.1.3.ja ...

  7. spring mvc 学习01 搭建

    /** * */ /** * @author Administrator * */ package com.study01.controller; import org.springframework ...

  8. [.NET MVC4 入门系列01]Helloworld MVC 4 第一个MVC4程序

    [.NET MVC4 入门系列01]Helloworld MVC 4 第一个MVC4程序   一.练习项目: http://www.asp.net/mvc/tutorials/mvc-4/gettin ...

  9. Knockout官网实例在MVC下的实现-01,实现Hello world

    本篇使用Knockout在MVC下实现"Hello World",对应的官网实例在这里. View视图 Knockout的一个特点是:声明式绑定,即Declarative bind ...

随机推荐

  1. 一个用js写的接口http调试程序

    公司有非常多手机app的项目.手机app又要常常訪问后台提交与查询数据. 所曾经端app与后台的开发与測试过程中接口调试是一个常常要做的工作. 而每当出现一个BUG,前端appproject师与后台p ...

  2. android各种资源的详细解释

    1.字符数组      使用字符串数组资源<string-array>标签定义,在<string-array>包括一些标签<item>数组元素标记.   例如 &l ...

  3. JPush极光推送 Java调用服务器端API开发

       极光推送是:使得开发者可以即时地向其应用程序的用户推送通知或者消息,与用户保持互动,从而有效地提高留存率,提升用户体验.简单的说就是通过JPush后台管理网站进行app消息的推送.可以让用户及时 ...

  4. UVA 11235 Frequent values(RMQ)

    Frequent values TimeLimit:3000Ms , ... , an in non-decreasing order. In addition to that, you are gi ...

  5. js正则匹配html内容

    1.得到网页上的链接地址: string matchString = @"<a[^>]+href=\s*(?:'(?<href>[^']+)'|"" ...

  6. EF 批量 循环删除

    var list = db.T_xAppRecord.Where(u => u.Id == 1).ToList(); //2.0 遍历集合,将 要删除的 对象 的代理对象的State 设置为 D ...

  7. 作为一个.net程序猿,需要掌握这些有点前途的人才,一些开发---Shinepans

    1.基础 C#基础                    参考书目:   <c#入门经典>         <ASP.NET揭秘> IIS  HTML              ...

  8. Java EE (5) -- Java EE 6 JavaServer Faces Developer Certified Expert(1z0-896)

    Section 1: Essentials of JSF2.0 Identify the features of JSF such as Facelets, BookMarkable View, AJ ...

  9. 递归算法的数据结构和算法 C++和PHP达到

    递归算法:它是一种间接的方法调用本身,直接或. 实施过程:按功能或子程序完成.在函数编写代码或子程序直接或间接拥有被称为.你可以完成递归. (相同类型的问题,子问题到最小问题有已知条件,然后来求解,然 ...

  10. POJ 2738 Two Ends(记忆化)

    Description In the two-player game "Two Ends", an even number of cards is laid out in a ro ...