ASP.NET从MVC5升级到MVC6 总目录

ASP.NET Core

首先,ASP原本只是一种技术,这种技术从上个世纪90年代就有了。
Active Service Page 和 Java Service Page 是相同的概念。
古老的WebForm技术,其实是正统的ASP.NET技术。刚开始的时候,代码和HTML都是写在一起的。同一个文件里面上半部分是C#代码,下半部分是HTML代码。
随着时间的推移,CodeBehind技术将前台代码和后台代码分离开来了。那个时候流行使用 IsPostBack来判断是Get还是Post。
接下来的历史,就是MVC1-MVC5。整个前后端更加独立了。MVC各司其职,和谐相处。关于MVC的文章,网络上已经不胜枚举了。这里也无需炒冷饭了。

ASP.NET项目一般是指 使用 ASP.NET的MVC框架和EntityFramework这个 ORM的项目。当然,EF只是操作SQL的一种方式。只是这样的搭配多了,所以MVC+EF变成了一种套餐。

改名

ASP.NET 5是ASP.NET Core的曾用名。
关于这个5 的解释,请参看一下这篇文章:

解读ASP.NET 5 & MVC6系列(1):ASP.NET 5简介

5也是.NET framework的新版本的版本号,称之为Core50,也叫.NET Core。.NET Core是.NET的重构版本,只保留原有框架中的最小化的功能集,对于其它的特性和功能,可以通过nuget下载以插件的形式运行。这就意味着,我们可以将其用于各种云环境进行独立部署。另外,微软还会提供一个跨平台的.NET Core,以便可以让ASP.NET程序部署到Mac和Unix/Liunx服务器上。另外.NET Core框架还可以和程序一起进行打包部署,从而可以实现在同一台服务器上使用不同版本的.NET Core。

当然,计划没有变化快,或许是为了和过去进行一个割裂,微软又将名字改为了Asp.NET Core

ASP.NET 5 改名 ASP.NET Core 1.0

今天,Scott Hanselman在其博客上宣布《ASP.NET 5 is dead - Introducing ASP.NET Core 1.0 and .NET Core 1.0》,ASP.NET 5已经被判死刑,Scott在其中也解释了改名的根本原因:之前称之为“ASP.NET 5”确实让人感觉这是ASP.NET 4.6的升级版,比其功能更加强大,未来会替代ASP.NET 4.6。其实不是的,因为“ASP.NET 5”是另起炉灶开发,和 ASP.NET 4.6是并行独立的关系。

所在现在的名字变动如下:

ASP.NET 5 –> ASP.NET Core 1.0
.NET Core 5 –> .NET Core 1.0
Entity Framework 7 –> Entity Framework Core 1.0
这样的重命名可以让人(特别是.NET 圈子之外的人)马上了解到这个技术栈是微软在Web开发领域的一个“重新出发”,他们之间的关系以及和之前技术的关系如下图所示:

和给小孩子命名一样,给产品命名也是一门学问。

关于.NET Core, .NET Framework , MONO之间的关系,请参考
补充知识 .Net Framework .Net Core Mono 区别联系

RoadMap

这个框架已经出来1年多了,按照RoadMap,下个月就应该出正式版了。
微软的东西,其实蛮善变的,所以在稳定之前,最好简单了解一下即可。
当然可以看一下大神们的尝鲜测评和系列文章。
在正式版Release之前的1个月开始,才系统学习也是完全来得及的。

Milestone Release week
Beta8 15 Oct 2015
RC1 Nov 2015
RC2 (Tools Preview 1) mid-May 2016
1.0.0 (Tools Preview 2) late-June 2016

术语

DNX:.NET Execution Environment,即.NET运行时环境,在Windows,Mac和Linux下运行.NET应用程序的环境(有点目前windows环境下的.NET Framework的意思),当然这东西是跨平台的,这是跟.NET Framework最大的不同之处。
DNVM:NX Version Manager,即DNX的版本管理工具,利用DNVM可以管理DNX的不同版本,你可以轻松切换到不同的DNX版本中。
.NET Core:可以理解为一个经过精简的、模块化的.NET Framework子集,目的是为了跨平台。.NET Core有一系列的类库组成,叫做"CoreFX",一个更精简的版本叫做"CoreCLR"。

环境准备

MVC5的开发环境,最简单的是VisualStudio2015 Update2。MVC6的开发环境可以是VisualCode,也可以是VisualStudio,不过安装.Net Core是必须的。安装过程请参考下面这篇文章:

.NET Core RC2发布在即,我们试着用记事本编写一个ASP.NET Core RC2 MVC程序

VisualCode 1.1.1

如何使用VisualCode

  1. 下载和安装VisualCode
    Visual Code 官网

  2. 下载一个MVC6的示例
    MVC6 Sample

  3. 使用VisualCode打开MVC项目目录。(打开目录的功能,VS15,注意,不是VS2015,也有这个功能了)

  4. 安装C#扩展。
    安装第一个出现的C#扩展即可(OmniSharp)。安装完成之后重启一下VisualCode
    如何安装扩展

  5. Restore Core Package
  • 可以直接在VisualCode 里面,使用F1窗体,进行 dotnet restore
  • 或者按照 VisualCode 的提示进行Restore(稍等一会儿,就会出现提示你Restore的置顶信息栏)
  • 这个过程非常可能慢,如果使用myget.org的Nuget的话。(2016/05/18 这个时间点还是无法Restore成功)

安装之后如果控制台有什么错误信息,可以通过下面的网址解决问题
VisualCode 常见问题

VisualStudio2015

选择 .NET Core 里面的WebApplication即可。Restore暂时没有问题。

可以运行成功

学习资源

本系列追求的是每一个知识点都力求讲解透彻,不会盲目追求文章的长度。每周至少更新一篇文章。
如果你只是想尝试Asp.NET Core,不喜欢卡顿的VisualStudio,你完全可以使用Visual Code来学习。

Github源代码
Artech的博客

参考文献

ASP.NET Core 1.0 Schedule and Roadmap

(0)ASP.NET Core 简单介绍 和开发环境搭建 - ASP.NET从MVC5升级到MVC6的更多相关文章

  1. Eclipse rap 富客户端开发总结(1) :rap简单介绍和开发环境搭建

    一.rap简单介绍 1 基本概念     RAP可以让开发人员使用JAVA API和按照Eclipse 插件的开发模式构建基于AJAX的Web 2.0应用程序, RAP的工作原理是采用交叉编译的方式将 ...

  2. Asp.net core 简单介绍

    Asp.net core 是一个开源和跨平台的框架,用于构建如WEB应用,物联网(IoT)应用和移动后端应用等连接到互联网的基于云的现代应用程序.asp.net core 应用可运行.net和.net ...

  3. ASP.NET Core 优雅的在开发环境保存机密(User Secrets)

    前言 在应用程序开发的过程中,有的时候需要在代码中保存一些机密的信息,比如加密密钥,字符串,或者是用户名密码等.通常的做法是保存到一个配置文件中,在以前我们会把他保存到web.config中,但是在A ...

  4. 1. React介绍 React开发环境搭建 React第一个程序

    什么是 React         React 是 Facebook 发布的 JavaScript 库,以其高性能和独特的设计理念受到了广泛关注. React的开发背景         Faceboo ...

  5. .Net Core + Angular Cli / Angular4 开发环境搭建

    一.基础环境配置 1.安装VS 2017 v15.3或以上版本 2.安装VS Code最新版本 3.安装Node.js v6.9以上版本 4.重置全局npm源,修正为 淘宝的 NPM 镜像: npm  ...

  6. .Net Core+Angular Cli/Angular4开发环境搭建教程

    一.基础环境配置1.安装VS2017v15.3或以上版本2.安装VSCode最新版本3.安装Node.jsv6.9以上版本4.重置全局npm源,修正为淘宝的NPM镜像:npminstall-gcnpm ...

  7. Python简单介绍以及Python环境搭建(入门1)

    转载请标明出处: http://www.cnblogs.com/why168888/p/6400694.html 本文出自:[Edwin博客园] Python 简单介绍 适合领域: Web网站和各种网 ...

  8. 一、Linux 设备驱动介绍及开发环境搭建

    1.1 Linux 设备驱动介绍 1.1.1 分类及特点 计算机系统的硬件主要由 CPU.存储器和外设组成. 当前 CPU 内部都集成有存储器和外设适配器. 外设适配器有入 UART.IIC 控制器. ...

  9. 最简单的PHP开发环境搭建

    近期发现一个非常easy的,适合刚開始学习的人的PHP开发环境,整个环境仅仅有三样东东,PHP ,APACHE , MYSQL可是对于初学PHP的人来说,己经足够了. 假设有兴趣的话能够直接去百度PN ...

随机推荐

  1. 前端HTML5几种存储方式的总结

    接下来要好好总结一些知识,秋招来啦...虽然有好多知识都不大会,但是还是要努力一下,运气这种东西,谁知道呢~ 总体情况 h5之前,存储主要是用cookies.cookies缺点有在请求头上带着数据,大 ...

  2. LINQ to SQL Select查询

    1. 查询所有字段 using (NorthwindEntities context = new NorthwindEntities()) { var order = from n in contex ...

  3. Node.js使用PM2的集群将变得更加容易

    介绍 众所周知,Node.js运行在Chrome的JavaScript运行时平台上,我们把该平台优雅地称之为V8引擎.不论是V8引擎,还是之后的Node.js,都是以单线程的方式运行的,因此,在多核心 ...

  4. Android:Activity+Fragment及它们之间的数据交换.

    Android:Activity+Fragment及它们之间的数据交换 关于Fragment与Fragment.Activity通信的四种方式 比较好一点的Activity+Fragment及它们之间 ...

  5. SQL Server存储过程

    创建于2016-12-24 16:12:19 存储过程 概念: 1.存储过程是在数据库管理系统中保存的.预先编译的.能实现某种功能的SQL程序,它是数据库应用中运用比较广泛的 一种数据对象. 2.存储 ...

  6. 进程监控工具supervisor 启动Mongodb

    进程监控工具supervisor 启动Mongodb 一什么是supervisor Superviosr是一个UNIX-like系统上的进程监控工具. Supervisor是一个Python开发的cl ...

  7. JAVA通信系列一:Java Socket技术总结

    本文是学习java Socket整理的资料,供参考. 1       Socket通信原理 1.1     ISO七层模型 1.2     TCP/IP五层模型 应用层相当于OSI中的会话层,表示层, ...

  8. Nodejs之MEAN栈开发(六)---- 用Angular创建单页应用(上)

    在上一节中我们学会了如何在页面中添加一个组件以及一些基本的Angular知识,而这一节将用Angular来创建一个单页应用(SPA).这意味着,取代我们之前用Express在服务端运行整个网站逻辑的方 ...

  9. ECMAScript 6 扫盲

    ECMAScript 6 目前基本成为业界标准,它的普及速度比 ES5 要快很多,主要原因是现代浏览器对 ES6 的支持相当迅速,尤其是 Chrome 和 Firefox 浏览器,已经支持 ES6 中 ...

  10. CSharpGL(30)用条件渲染(Conditional Rendering)来提升OpenGL的渲染效率

    CSharpGL(30)用条件渲染(Conditional Rendering)来提升OpenGL的渲染效率 当场景中有比较复杂的模型时,条件渲染能够加速对复杂模型的渲染. 条件渲染(Conditio ...