【发布时间】:2021-07-25 13:14:38
【问题描述】:
我正在设置 Visual Studio Code 来编写和学习 C#。
我无法找到并使用带有 Visual Studio Code 的 最新 版 C# 编译器。
使用 Visual Studio Code 终端命令查询我的编译器版本 csc -langversion:? 会出现以下错误消息:
csc : 术语“csc”未被识别为 cmdlet 的名称, 函数、脚本文件或可运行的程序。检查拼写 名称,或者如果包含路径,请验证路径是否正确并 再试一次。
我之前解决问题的尝试
经过仔细搜索,我发现了这一点:
- 使用 Visual Studio 时,甚至不会出现此问题。 Visual Studio 显然包含必要的 .NET SDK 和编译器并自动使用它。
- 我应该找到 csc.exe 文件并将其设置为环境变量路径。
我找到的唯一 csc.exe 文件位于以下目录中: C:\Windows\Microsoft.NET\Framework64\v x.x.xxxxx,最新版本为 4.0.30319。
我能找到的所有说明都建议使用此文件夹设置为环境变量路径。
我这样做。我现在在 Visual Studio Code 中重试:csc -langversion:?
现在我收到以下消息:
适用于 C# 5 的 Microsoft (R) Visual C# 编译器版本 4.8.4084.0 版权所有 (C) 微软公司。保留所有权利。
此编译器作为 Microsoft (R) .NET Framework 的一部分提供, 但仅支持最高 C# 5 的语言版本,这不再是 最新版本。对于支持较新版本 C# 的编译器 编程语言,见 http://go.microsoft.com/fwlink/?LinkID=533240
警告 CS2008:未指定源文件错误 CS1617:选项无效 “?”对于 /langversion;必须是 ISO-1、ISO-2、3、4、5 或默认值"
所以我所指的 csc.exe 已设置为环境变量路径已过时。但是,我希望获得 C# 9 的所有现代特性。
我再次尝试从文件夹“C:\Program Files\dotnet”中找到最新的编译器,但我只能找到一个文件夹“Roslyn”,据我了解,它指的是最新版本的 csc。我在这些文件夹中找不到任何 csc.exe。
解决方案?
现在我应该从某处(在哪里?) 找到支持 C# 9 的最新 csc.exe 并将其设置为环境变量路径吗?
还是我走错了路?
或者是我完全放弃 Visual Studio Code 并切换到 Visual Studio 的唯一选择(我不想这样做)。但这不可能是唯一的解决方案!
背景资料
我是编码世界的初学者。
我已安装最新版本的 .NET SDK 5.0.302。
我在我的 Visual Studio Code 实例中安装了以下扩展:
- C# (MS)
- .NET 扩展作者 (MS) 安装工具,
- C# XML 文档注释 (Keisuke Kato)
- ilspy-vscode(SharpDevelop 团队)
- MSBuild 项目工具(tintoy)
- REST 客户端(茂华超)
【问题讨论】:
-
下载并安装最新的 .NET SDK,然后安装 VS Code 的 C# 扩展。应该够了。
-
这个问题也可能是现在删除的问题 Option "csc -langversion?" is not working in Visual Studio Code 的重复目标。这个问题的答案之一暗示了为什么使用可执行文件
dotnet可能是相关的。
标签: c# visual-studio-code csc