[.NET大牛之路 009] 使用 VSC 开发 .NET 应用

前面用八篇文章介绍了 .NET 和 .NET 的底层模型相关的知识点。这些知识点都偏理论了些,相对比较枯燥,我也是尽可能简单的讲,甚至还不全面。但有了这些也基本上够了,后面如果遇到了再带着讲一下吧。

注:在编写本课程的期间,我都会基于最新的 .NET SDK(主要正式)版本来讲解课程和编写代码。在写这篇文章的时候 .NET 的最新主要正式版是 .NET 5。

现在,从这篇文章开始,我们就要动手操作了。工欲善其事,必先利其器,我们先从开发工具开始。

01 安装 VSC

虽然大部分人包括我自己开发 .NET 应用,用的最多的是 Visaul Studio,但为了照顾到更多的同学,这门课我们选择使用更轻快的跨平台的 Visaul Studio Code (VSC),它可以让使用 Mac 或 Linux 系统的人也能开发 .NET 应用。

如果你还没有安装过 VSC,请至下面官网链接下载:

https://code.visualstudio.com/download

下载后直接一直下一步安装即可,没什么好讲的。

VSC 不像 VS 那样把所需的功能都集成好了,使用 VSC 开发 .NET 应用需要再安装 VSC 的 C# 扩展。打开 VSC,点击左边图标菜单“扩展”,搜索“C#”,点击安装即可:

[.NET大牛之路 009] 使用 VSC 开发 .NET 应用

02 使用 CLI 检查 SDK

我们先需要确认自己的开发机器上 .NET SDK 的安装情况(SDK 会随 VS 一起安装)。如果安装过 .NET SDK,那一定同时安装了 .NET 的 CLI(Command Line Interface,命令行接口):dotnet.exe。 .NET CLI 有很多命令,大部分在 VS 上能做的事情通过 CLI 命令行也能做,包括创建、生成、运行和发布等。这些命令在后面我们用到的时候还会讲,现在我们先来了解几个 SDK 相关的,主要有:

  • --version:显示你电脑上所安装 SDK 的最高版本,或当前目录及上级目录 global.json 中指定的版本。
  • --info:显示 .NET 的信息,包括版本号、运行时环境、安装位置等。
  • --list-runtimes:显示所有已安装的运行时信息。
  • --list-sdks:显示已安装的 SDK 信息。

这里我们使用 --version 来检查机器上的 .NET SDK 安装情况,打开一个命令行终端输入 dotnet --version

$ dotnet --version
5.0.301

如果没有正确出现版本号或者版本号小于 5.0.100,请前往官方网站 www.dot.net 下载 .NET 5 SDK 并安装。官方网站有各个操作系统的 SDK 安装方法,操作很简单,大家照着安装就行。

03 理解 SDK 版本号

这里补充一个关于 .NET SDK 版本号的小知识点。和大部分软件版本号一样,它的版本号也是用 . 分成的三段。在写这篇文章的时候,.NET 的版本号是 5.0.301

最前面的一段是数字 5  ,表示大版本号或主要版本号。微软每年都会发布一个 .NET 主要版本,比如今年 11 份即将发布的下一个 .NET 版本对应的数字是 6

中间段的数字 0 表示小版本。一般我们只需关心前面两个数字 5.0,它表示可以部署的最高版本的运行时,意味着 5.0 的 SDK 也支持为较低版本的运行时开发,如 .NET Core 3.1。

版本号的第三段的第一个数字 3 表示季度,这个估计很多人不知道。由于 .NET 5 目前处于发布后的第三季度,所以它是 3。这段最后两个数字 01 表示补丁版本。

04 使用指定的 SDK 版本

.NET 默认使用的是最新的 SDK。如果你的机器上安装了多套 SDK,而你需要使用早期版本的 .NET SDK 进行开发,你可以通过在你的项目根目录中创建一个 global.json 文件来设置指定的 SDK 版本。使用以下命令创建一个 global.json 文件并同时指定 .NET SDK 版本:

dotnet new globaljson –sdk-version 3.1.411

生成的文件是这样的:

{
  "sdk": {
    "version": "3.1.411"
  }
}

该文件将当前目录及其所有子目录的 .NET SDK 版本绑定为 3.1.411,在该目录下运行 dotnet.exe --version 将显示 3.1.411

05 创建和运行一个项目

VSC 和 SDK 确认安装好后,我们就来试试创建一个项目吧。

我们知道 VS 可以通过图形界面简单的点击就可以创建、运行和调试项目,但 VSC 并没有界面,要执行这些操作基本上都需要使用命令行。

打开一个命令行窗口(以 PowerShell 为例),使用以下命令创建一个解决方案文件 SimpleApp.sln 到指定的目录 SimpleApp 下:

dotnet new sln -n SimpleApp -o .\SimpleApp

注:-n 表示新建(New),-o 表示输出目录(Output)。

再使用如下命令创建一个控制台(Console)项目:

dotnet new console -n SimpleConsoleApp -o .\SimpleApp\SimpleConsoleApp -f net5.0

注:console 表示使用控制台项目模板;-f 表示目标框架(Framework),可省略,若省略则会指定为你机器上已安装的最新 .NET SDK 版本。

然后再将该项目添加到之前创建好的解决方案中:

dotnet sln .\SimpleApp.sln add .\SimpleConsoleApp

以上过程就和在 VS 中选择模板创建项目是一样的。

继续在命令行窗口输入 code .,它将使用 VSC 打开当前目录,打开后是这样的:

[.NET大牛之路 009] 使用 VSC 开发 .NET 应用

我们可以使用 ctrl+` 快速打开 VSC 中的命令行终端窗口,这样不用在编辑器和命令行终端之间来回切换。

最后,我们来运行一下创建好的项目,在终端输入:

cd .\SimpleConsoleApp
dotnet run

如果一切正常,可以看到如下打印结果:

[.NET大牛之路 009] 使用 VSC 开发 .NET 应用

06 使用 VSC 调试

VSC 的调试和断点操作基本和 VS 一样,也是按 F5 启动调试模式运行。在项目中,第一次按 F5 时会让你选择调试器,我们选择 .NET Core Launch (console)。之后 VSC 会在 .vscode 文件夹下创建一个名为 launch.json 的文件,在这个文件中,我们需要将 program 修改为我们要调试的文件路径:

{
  "version": "0.2.0",
  "configurations": [
    {
      "name": ".NET Core Launch (console)",
      "type": "coreclr",
      "request": "launch",
      "preLaunchTask": "build",
      "program": "${workspaceFolder}/SimpleConsoleApp/bin/Debug/net5.0/SimpleConsoleApp.dll",
      "args": [],
      "cwd": "${workspaceFolder}",
      "console": "internalConsole",
      "stopAtEntry": false
    },
    {
      "name": ".NET Core Attach",
      "type": "coreclr",
      "request": "attach"
    }
  ]
}

最后,在程序中随意添加一个断点,按 F5 运行,若一切正常会是这样的:

[.NET大牛之路 009] 使用 VSC 开发 .NET 应用

到这,我们就把环境准备工作做好了,可以使用 VSC 进行项目开发了。

本文来自http://cnblogs.com/willick,经授权后发布,本文观点不代表个人技术分享立场,转载请联系原作者。

chaoqiangchaoqiang
上一篇 2021-08-12 20:18
下一篇 2021-08-14 07:42

相关推荐

近期个人博客正在迁移中,原博客请移步此处,抱歉!