zoukankan      html  css  js  c++  java
  • (0)ASP.NET Core 简单介绍 和开发环境搭建

    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

  • 相关阅读:
    mysql数据创建带参的存储过程,并在存储过程中调用另一个存储过程
    python解析.xls/.xlsx文件--openpyxl模块(第三方)
    python使用django开发接口
    Mysql创建存储过程--批量插入数据
    Centos7下安装kafka,并使用python操作kafka的简单使用
    Centos7下安装JDK1.8
    Centos7下docker的安装
    python解析.xml文件-- xmltodict模块(第三方)
    解决:git SSL certificate problem: unable to get local issuer certificate
    AD域是什么意思?
  • 原文地址:https://www.cnblogs.com/TextEditor/p/5504193.html
Copyright © 2011-2022 走看看