原文:ASP.NET Core 2 学习笔记(一)开始

来势汹汹的.NET Core似乎要取代.NET Framework,ASP.NET也随之发布.NET Core版本。虽然名称沿用ASP.NET,但相对于ASP.NET确实有许多架构上的差异,可以说除了名称外,已是两个不同的框架。

前言

要开发.NET Core必须要安装.NET Core SDK,所以先到官网下载.NET Core SDK的安装文件,官网下载位置点我

.NET Core作为跨平台的框架,不再像 .NET Framework 要依附在 Windows系统才能运行,所以你可以按照你需要的版本进行下载及安装。

安装完成后,可以通过 .NET Core CLI(Command-Line Interface)确认.NET Core SDK安装的版本,指令如下:

dotnet --version

建立网站项目

先建立一个项目文件夹 MyWebsite,然后在该文件夹中执行.NET Core CLI 创建网站的指令:

dotnet new web

.NET Core CLI 会在该文件夹,创建一个空的 ASP.NET Core 模板,內容如下:

obj/                            # 项目暂存目录
wwwroot/ # 网站根目录 (空的)
MyWebsite.csproj # 项目文件
Program.cs # 入口
Startup.cs # 网站的相关设置

启动网站

创建完成后,就可以用 .NET Core CLI 启动网站了。启动网站指令:

dotnet run

.NET Core CLI 默认会启动一个http://localhost:5000/的站点,用浏览器打开此链接就可以看到 ASP.NET Core 网站了。如下:  

用VS Code进行开发

.NET Core 都已经跨平台了,开发工具当然也不能局限于 Visual Studio IDE (Visual Studio 2017/2015 等)。基本上纯文字编辑器搭配 .NET Core CLI 就可以开发 ASP.NET Core 了,但沒有断点调试或 Autocomplete 开发有些辛苦。如果是 Windows系統,最推荐的当然还是 Visual Studio IDE,再来就是 Visual Studio Code (简称 VS Code)。

VS Code是一套可安裝插件的文字编辑器,同时支持 Windows、Mac 及 Linux 版本,即轻量又免费。
只要安装增强插件就变成了 IDE,并且支持多种编程语言。下载位置点我

安装插件

打开VS Code 可以在左边看到五个Icon,点击最下面的那么Extensions图标,并在Extensions搜索框中输入C#,便可以找到C#插件安装。如下图:

打开项目

VS Code 和一般的文字编辑器有些不同,它是以文件夹为工作区域,打开一个目录,就等于打开了一个项目。从上方工具栏中文件->打开文件夹 选择ASP.NET Core项目目录,大概隔几秒后,VS Code 会提示是否要帮此项目加入Build/Debug的设置。如下图:

Build/Debug 设置

如果沒有自动提示加入 Build/Debug 设置,可以在左边 Icon,点击倒数第二個 Debug 图标,手动加入 Build/Debug 设置(添加配置)。如下步骤:

设置完成后,VS Code 会自动创建 .vscode 目录及设置文件 launch.jsontasks.json。目录结构如下如下:

vscode/                         # VS Code 配置目录
launch.json # 用 VS Code 启动项目的设置
tasks.json # 定义 launch.json 会用到的指令
obj/ # 项目暂存目录
wwwroot/ # 网站根目录 (空的)
MyWebsite.csproj # 项目文件
Program.cs # 入口
Startup.cs # 网站的相关设置

断点调试

在代码行号的左边点击就可以下中短浅了,跟一般 IDE 差不多。然后在 Debug 侧栏启动查错:

当执行到该断点后,就会停下來,并在 Debug 侧栏显示当前变量的状态等,也可以用鼠标移到变量上查看变量的內容。如下:

查错方式跟大部分的 IDE 都差不多,可以 Step over、Step in/out 等。
如此一来就可以用 VS Code 轻松开发 ASP.NET Core了。

老司机发车啦:https://github.com/SnailDev/SnailDev.NETCore2Learning

ASP.NET Core 2 学习笔记(一)开始的更多相关文章

  1. Asp.Net Core WebApi学习笔记(四)-- Middleware

    Asp.Net Core WebApi学习笔记(四)-- Middleware 本文记录了Asp.Net管道模型和Asp.Net Core的Middleware模型的对比,并在上一篇的基础上增加Mid ...

  2. ASP.NET Core 2 学习笔记(七)路由

    ASP.NET Core通过路由(Routing)设定,将定义的URL规则找到相对应行为:当使用者Request的URL满足特定规则条件时,则自动对应到相符合的行为处理.从ASP.NET就已经存在的架 ...

  3. ASP.NET Core 2 学习笔记(十三)Swagger

    Swagger也算是行之有年的API文件生成器,只要在API上使用C#的<summary />文件注解标签,就可以产生精美的线上文件,并且对RESTful API有良好的支持.不仅支持生成 ...

  4. ASP.NET Core 2 学习笔记(十二)REST-Like API

    Restful几乎已算是API设计的标准,通过HTTP Method区分新增(Create).查询(Read).修改(Update)和删除(Delete),简称CRUD四种数据存取方式,简约又直接的风 ...

  5. ASP.NET Core 2 学习笔记(十)视图

    ASP.NET Core MVC中的Views是负责网页显示,将数据一并渲染至UI包含HTML.CSS等.并能痛过Razor语法在*.cshtml中写渲染画面的程序逻辑.本篇将介绍ASP.NET Co ...

  6. sql server 关于表中只增标识问题 C# 实现自动化打开和关闭可执行文件(或 关闭停止与系统交互的可执行文件) ajaxfileupload插件上传图片功能,用MVC和aspx做后台各写了一个案例 将小写阿拉伯数字转换成大写的汉字, C# WinForm 中英文实现, 国际化实现的简单方法 ASP.NET Core 2 学习笔记(六)ASP.NET Core 2 学习笔记(三)

    sql server 关于表中只增标识问题   由于我们系统时间用的过长,数据量大,设计是采用自增ID 我们插入数据的时候把ID也写进去,我们可以采用 关闭和开启自增标识 没有关闭的时候 ,提示一下错 ...

  7. 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(十)-- 发布(Windows)

    本篇将在这个系列演示的例子上继续记录Asp.Net Core在Windows上发布的过程. Asp.Net Core在Windows上可以采用两种运行方式.一种是自托管运行,另一种是发布到IIS托管运 ...

  8. ASP.NET Core MVC学习笔记

    最近由于疫情紧张,遂在家办公,在领导的带领下,学习了一下.Net Core MVC. 一,构建web应用 1.选择c#-所有平台-web  找到ASP.NET Core web应用程序 2.项目命名之 ...

  9. 使用Visual Studio Code开发Asp.Net Core WebApi学习笔记(九)-- 单元测试

    本篇将结合这个系列的例子的基础上演示在Asp.Net Core里如何使用XUnit结合Moq进行单元测试,同时对整个项目进行集成测试. 第一部分.XUnit 修改 Project.json 文件内容, ...

随机推荐

  1. WP8.1开发:后台任务详解(求推荐)

    小梦今天给大家分享一下windows phone 8.1中的后台任务如何实现,许多应用都会用到后台任务,所以我们必须得掌握. 新建后台任务类: 首先我们先新建一个windows phone 8.1空白 ...

  2. Smarty3.1.8 安装

    应用环境:Winsows7 IIS + PHP5.5.12 + Smarty3.1.8 1. IIS 及 PHP 安装,参照<php手册>,这里不做细表. 2. 假定应用目录为 C:\in ...

  3. OpenGL核心之视差映射

    笔者介绍:姜雪伟,IT公司技术合伙人.IT高级讲师,CSDN社区专家,特邀编辑.畅销书作者;已出版书籍:<手把手教你¯的纹理坐标偏移T3来对fragment的纹理坐标进行位移.你能够看到随着深度 ...

  4. [Angular Form] ngModel and ngModelChange

    When using Radio button for Tamplate driven form, we want to change to the value change and preform ...

  5. C 语言 —— ! 和 ~(感叹号和波浪号)

    ~ 表示按位取反,是位运算符,运算对象是 2 进制. !表示逻辑非,是逻辑运算符,运算对象是真或假.最终的结果也是 0/1 !!:则表示取过一次非之后,再取一次: !!5 ⇒ 1

  6. RoundingMode 几个参数详解

    第一版 java.math.RoundingMode 几个参数详解 java.math.RoundingMode里面有几个参数搞得我有点晕,现以个人理解对其一一进行总结: 为了能更好理解,我们可以画一 ...

  7. 十年磨一剑 Delphi再写传奇(不争辩,不解释,十年坚持不懈的努力)

    新年伊始,英巴卡迪诺公司(Embarcadero)就在其官网发布了“激动人心的RAD Studio2018年发展规划”公告(见上图).公告中指出,将在于2018年发布10.3.X新版本,新版本兼容Ex ...

  8. 01_Git的安装和简单使用(命令行模式+图形化模式)

      刚开始用git的小白适用,参考链接:http://www.cnblogs.com/qijunjun/p/7137207.html  实际项目开发中,我们经常会用一些版本控制器来托管自己的代码,今天 ...

  9. 【b501】谁拿了最多的奖学金

    Time Limit: 1 second Memory Limit: 50 MB [问题描述] 某校的惯例是在每学期的期末考试之后发放奖学金.发放的奖学金共有五种,获取的条件各自不同:1) 院士奖学金 ...

  10. 项目中碰到的ExceptionInInitializerError异常

    背景 之前在集成第三方即时通信系统-融云的时候,我直接clone它的服务端源码,然后导入我的项目,我在测试它连接融云服务器案例时,发现一直不成功,始终报一个 ExceptionInInitialize ...