VSCode调试C#控制台应用时集成终端无法交互输入
解决.NET调试时Console.ReadLine无输入入口的问题
可能的解决方案:
- 检查launch.json完整配置:确保除了
"console": "integratedTerminal",还要添加"internalConsoleOptions": "neverOpen",强制使用集成终端而非VS Code内置调试控制台(内置控制台不支持交互式输入)。配置片段示例:{ "version": "0.2.0", "configurations": [ { "name": ".NET Core Launch (console)", "type": "coreclr", "request": "launch", "program": "${workspaceFolder}/bin/Debug/net7.0/YourProjectName.dll", "args": [], "cwd": "${workspaceFolder}", "console": "integratedTerminal", "internalConsoleOptions": "neverOpen" } ] } - 确认终端焦点:调试启动后,切换到终端标签页(而非“输出”面板),确保选中调试会话对应的终端实例(通常显示调试相关进程标识),而非其他终端窗口。
- 强制输出缓冲刷新:在代码的
Console.WriteLine("What is your name?");后添加Console.Flush();,确保输出内容立即写入终端,避免缓冲导致的内容延迟显示。 - 清理并重新构建项目:删除项目根目录下的
bin和obj文件夹,在终端执行dotnet clean和dotnet build命令,清除编译缓存问题。 - 验证program路径正确性:检查launch.json中
program字段的路径是否指向正确的编译产物(通常为bin/Debug/net7.0/项目名.dll),路径错误会导致调试会话异常。
内容的提问来源于stack exchange,提问作者Jim
相关产品推荐
相关产品推荐

