我最近将我的 VisualStudio Code 版本升级到最新版本,但在尝试调试 csharp 应用程序时出现错误。我在 Windows 10 (14393) 中运行并使用 vs 代码 1.23.1。我有一个几个月前使用 visual studio code 创建的应用程序,当时它运行良好。它是一个使用 dotnetcore2.0 的 MVC 应用程序。当我尝试运行调试时,我收到一条消息“找不到命令‘csharp.coreclrAdapterExecutableCommand’。我可以通过从项目文件夹运行“dotnet run”来执行应用程序。
我尝试创建一个新的空白控制台应用程序,它只显示“hello world”并且能够再次从“dotnet run”运行,但是当我尝试调试时,我得到了相同的消息。我能够成功运行构建任务。
我试图研究错误中提到的方法,但几乎一无所获。我相信 omnisharp 是运行 csharp 调试的解决方案,我查了一下。从他们的文档中可以看出,它需要 .net framework 4.6 才能工作。我已验证我已安装每个 .net 框架的 sdk 和运行时。
我通常很擅长解决此类问题,这是我在堆栈上发表的第一篇文章。我希望有人可能知道这到底是什么,以便我可以继续前进。
值得一提的是,我曾多次尝试重启我的机器,甚至卸载/重新安装了 vs code。下面是 launch.json 文件的示例。
{
// Use IntelliSense to learn about possible attributes.
// Hover to view descriptions of existing attributes.
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": ".NET Core Launch (console)",
"type": "coreclr",
"request": "launch",
"preLaunchTask": "build",
"program": "${workspaceRoot}/helloworld/bin/Debug/netcoreapp2.0/helloworld.dll",
"args": [],
"cwd": "${workspaceRoot}",
"stopAtEntry": false,
"console": "internalConsole"
}
]
}
最佳答案
多亏了@bman7716,我才能够弄清楚发生了什么。问题是 omnisharp 扩展已损坏(或相关的依赖项)。我能够通过以下方式解决问题:
- 从 VS Code 卸载 c# 扩展
- 关闭 VS Code
- 删除所有 C:\Users{用户名}.vscode\extensions\ms-vscode.csharp-{version}
- 打开 VS 代码
- 安装 C# 扩展
- 打开项目
- 进入 Debug模式并开始调试
这迫使 VS Code 重新安装 omnisharp 及其依赖项,之后一切正常。
关于c# - VisualStudio 代码 csharp 调试器生成错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50337363/