只是为了记录自己的学习过程,可能内容写得并不够详细、严谨,多包涵。


文章目录

  • 配置C#环境
  • 安装最新版本的.NET Core SDK
  • 在VSCode中安装C#扩展
  • 配置C#构建和调试环境
  • launch.json文件的配置
  • launch.json的生成方法
  • 通过vscode的终端创建C#程序展示如何创建launch.json文件需要的一些终端命令:
  • launch.json下的各个属性含义
  • 参考文章


配置C#环境

安装最新版本的.NET Core SDK

注: 也可按照自己的需要下载相应版本,也不限于.NET Core;这里只是按照我个人的需要来的。

官方下载地址:https://dotnet.microsoft.com/download/dotnet/thank-you/sdk-3.1.410-windows-x64-installer 下载后按照提示安装即可

在VSCode中安装C#扩展

直接在VSCode的应用商店搜索安装即可

点击 查看->扩展(或者用快捷键 Crtl+Shift+X )打开应用商店

VSCode 配置Android app vscode 配置c#环境 调用dll_Core

搜索C#选择需要的扩展安装(由于我已经安装好了所以显示的是卸载)

VSCode 配置Android app vscode 配置c#环境 调用dll_Core_02

配置C#构建和调试环境

要能够运行和调试C#环境,还需要配置好launch.json文件

launch.json文件的配置

launch.json是vscode的一个配置文件用于配置调试器的,比如指定调试语言环境,指定调试类型等等。

launch.json的生成方法

  1. 自己手动在.vscode创建一个launch.json并配置好各个属性。
  2. 第一次运行程序的时候,选择让vscode自动帮我们创建出来。(点击debug时会有一个create a launch.json的链接。)
  3. VS Code命令选项板执行命令.NET:Generate Assets for Build and Debug来强制生成。

,第二、三项launch.json能够生成成功的前提是:工作区只有一个可启动的项目

接下来,通过创建C#程序来描述2、3项是如何创建launch.json文件的。

通过vscode的终端创建C#程序展示如何创建launch.json文件需要的一些终端命令:

路径跳转:cd
新建项目:dotnet new console -o 路径 (或者dotnet new console)
运行:dotnet run

通过dotnet -h可以知道更多关于dotnet的一些命令

点击 终端->新终端 打开终端后,通过终端来创建C#程序并运行调试。

VSCode 配置Android app vscode 配置c#环境 调用dll_Code_03

首先可通过 cd 路径 跳转到用来保存程序的路径下,再通过 dotnet new console -o 路径 (或者dotnet new console)来创建一个新的程序。

VSCode 配置Android app vscode 配置c#环境 调用dll_json_04

VSCode 配置Android app vscode 配置c#环境 调用dll_json_05

测试了一下,发现必须要第一次通过终端执行该项目时, C# extension才提供自动生成launch.json的功能;直接按F5执行给 的是 “没有用于调试C#的扩展”

通过终端运行:

VSCode 配置Android app vscode 配置c#环境 调用dll_json_06

选择"Yes"后,就会自动生成出launch.json,在.vscode文件下

VSCode 配置Android app vscode 配置c#环境 调用dll_Core_07

如果错过此提示,可以通过从VS Code命令选项板执行命令 .NET:Generate Assets for Build and Debug 来强制生成。

通过 crtl + shift + P 可以打开命令选项板

VSCode 配置Android app vscode 配置c#环境 调用dll_Code_08

之后就会出现同上的提示了。

通过F5执行 :

VSCode 配置Android app vscode 配置c#环境 调用dll_json_09

但是在这过程中我还是遇到了另外的问题,第一次执行没有出现, C# extension提供自动生成launch.json的提示,之后通过命令 .NET:Generate Assets for Build and Debug 也不能生成launch.json的文件。暂时还没搞明白是哪里出问题了。

launch.json下的各个属性含义

以下是launch.json文件的

{
    "version": "0.2.0",
    "configurations": [
        {
            // Use IntelliSense to find out which attributes exist for C# debugging
            // Use hover for the description of the existing attributes
            // For further information visit https://github.com/OmniSharp/omnisharp-vscode/blob/master/debugger-launchjson.md
            "name": ".NET Core Launch (console)",
            "type": "coreclr",
            "request": "launch",
            "preLaunchTask": "build",
            // If you have changed target frameworks, make sure to update the program path.
            "program": "${workspaceFolder}/C#Code/bin/Debug/net5.0/C#Code.dll",
            "args": [],
            "cwd": "${workspaceFolder}/C#Code",
            // For more information about the 'console' field, see https://aka.ms/VSCode-CS-LaunchJson-Console
            "console": "internalConsole",
            "stopAtEntry": false
        },
        {
            "name": ".NET Core Attach",
            "type": "coreclr",
            "request": "attach"
        }
    ]
}

name:配置名称,将会在启动配置的下拉菜单中显示。
type: 配置类型(编程环境)
request:请求配置类型,可以为launch(启动)或attach(附加)
preLaunchTask: 调试会话开始前执行的任务,一般为编译程序。与tasks.json的label相对应
program: 将要进行调试的程序的路径
args: 程序调试时传递给程序的命令行参数,一般设为空即可

cwd: 调试程序时的工作目录
console: “控制台”设置控制目标应用程序启动到哪个控制台(终端)窗口
console有效的三种配置:

  • internalConsole:内部控制台
  • integratedTerminal:内部终端
  • externalTerminal:外部终端

stopAtEntry: 设为true时程序将暂停在程序入口处,我一般设置为true

参考文章

vscode里的launch.json是干什么用的 作者: tjackvscode 的launch.json文件(一) 作者:皮皮君vscode 的launch.json文件(二)——配置launch.json启动用于C#调试 作者:皮皮君vscode调试运行c#详细操作过程 作者:闪电Y黑客