基本步骤与VSCode配置C#环境一致,但有几点需要注意:
创建工程时
最好使用dotnet new console --framework net5.0
语句显式声明所使用的框架,net
后的版本号应当与本机安装的.NET SDK的版本相同,dotnet 的版本号可以在cmd或power shell中输入dotnet --info
来查询1。
配置调试环境
要想生成用于调试的launch.json
文件和task.json
文件,需要注意:
- 不要使用下图所示的“创建launch.json文件”这个命令来创建,
- 也不要直接F5运行后跟随对话框的引导来创建,
- 应当如C#入门一:vscode运行与调试所述,用
Generate C# Assets for Buiding and Deebug
来创建。
使用Code Runer运行报错
现象
使用VScode的Ctrl + Alt +N运行代码时,可能会报错:
scriptcs : 无法将“scriptcs”项识别为 cmdlet、函数、脚本文件或可运行程序的名称。请检查名称的拼写,如果包括路径,请确保路径正确,然后再试一次。
原因
这是由于未使用dotnet new console
创建控制台并在控制台中运行.cs
文件。
解决措施
若希望在不创建控制台的情况下运行C#脚本,需要借助其他VS Code插件,如Code Runner或C# script runne,而这两个插件运行C#脚本都需要依赖Scriptcs,解决方案如下:
- 前往Chocolatey,在下载页面根据提示在cmd或powershell中以管理员身份安装Chocolatey。
- 此时你可能会遇到
操作超时
的报错:可以尝试下载安装文件,或者离线安装,更多安装方式参考安装文档。 - 前往Scriptcs,根据官网提示在cmd或powershell中安装Scriptcs。
- 如果Scriptcs安装失败并报错:
有相关issue也提到了这一错误,但这个issue并未给出太有用的建议。接下来,你可以:ERROR: The term 'Write-ChocolateyFailure' is not recognized as the name of a cmdlet, function, script file, or operable program.
- 采用VSCode > 使用scriptcs运行C#脚本提到的方法强行使用,此方法的弊端在于一些环境变量2不能正确配置。
- 【推荐方法】 正如Chocolatey的issue2398所说,Chocolatey自1.0.0版本后已经废弃了
Write-ChocolateyFailure
命令,而Scripts的安装脚本中包含了这一命令,因此在安装Scripts之前,你需要安装Chocolatey的兼容包chocolatey-compatibility.extension,之后Scriptcs的安装将正常进行。