1.环境 Windows,.NET Core 2.0,VS Code
dotnet> dotnet new console -o myApp
2.launch.json配置文件
{
// 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
"version": "0.2.0",
"configurations": [
{
"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}/myApp/bin/Debug/netcoreapp2.0/myApp.dll",
"args": [],
"cwd": "${workspaceFolder}/myApp",
// For more information about the 'console' field, see https://github.com/OmniSharp/omnisharp-vscode/blob/master/debugger-launchjson.md#console-terminal-window
"console": "internalConsole",
"stopAtEntry": false,
"internalConsoleOptions": "openOnSessionStart"
},
{
"name": ".NET Core Attach",
"type": "coreclr",
"request": "attach",
"processId": "${command:pickProcess}"
}
,]
}
在launch.json中
name:配置名称,在启动配置下拉菜单中显示
type:配置类型
request:请求配置类型(一般为launch或attach)运行或附加
preLaunchTask:调试会话前要运行的任务
program:程序Build以后生成的dll,默认是${workspaceFolder}/bin/Debug/(target-framework)/(project-name.dll)
workspaceFolder:正在调试的程序的工作目录的路径。默认为当前工作区(即使用Code命令进入的目录)
target-framework:框架
args:传递给程序的命令行参数
cwd:项目目录
console:启动调试目标的位置
stopAtEntry:调试器是否在目标的入口点停止,默认为 false
internalConsoleOptions:内部调试控制台的控制行为
processId:要附加到的进程 id。使用 "$ {command:pickProcess}" 以获取要附加到的正在运行的进程的列表。如果使用 "processId", 则不应使用 "processName"。
注:在.NET Core 1.0版本中
externalConsole:Console单独启动配置,开发console时,如果需要输入后调试,将值设置为true,将console单独启动即可。
来源:oschina
链接:https://my.oschina.net/u/4381341/blog/3927798