从命令行编译新的 C# 版本(C# 7.0 更高版本)

Compiling New C# Versions (C# 7.0 Higher) From The Command Line

当我尝试使用 Microsoft 的 Visual C# 编译器 (v4.8.4084.0) 从命令行编译源代码时,我收到以下错误 and/or 警告:

PS C:\> csc Program.cs

This compiler is provided as part of the Microsoft (R) .NET Framework, but only supports language versions up to C# 5, which is no longer the latest version. For compilers that support newer versions of the C# programming language, see http://go.microsoft.com/fwlink/?LinkID=533240

作为 Roslyn 项目的一部分,C# 7.0 language features are currently being developed; but the current version of C# programming language is C# 10。有没有办法从命令行使用 C# 7.0 高级语言功能

尝试打开 *.csproj 文件并添加到 <PropertyGroup> 标签。我将它添加到 DEBUGRELEASE 标签中。

<Project Sdk="Microsoft.NET.Sdk">
    <PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU'">
        <PlatformTarget>AnyCPU</PlatformTarget>
        <DebugSymbols>true</DebugSymbols>
        <DebugType>full</DebugType>
        <Optimize>false</Optimize>
        <OutputPath>bin\Debug\</OutputPath>
        <DefineConstants>DEBUG;TRACE</DefineConstants>
        <ErrorReport>prompt</ErrorReport>
        <WarningLevel>4</WarningLevel>
        <Prefer32Bit>false</Prefer32Bit>
        <!-- Using the following property will work. -->
        <LangVersion>8.0</LangVersion>
    </PropertyGroup>
</Project>

如果安装 Visual Studio,您应该会在“开发人员命令提示符”的开始菜单中获得一个条目。这将在您的路径中包含最新的 csc 和 msbuild。您必须已将旧的(未维护的)工具添加到您的 PATH 中,这就是您收到该错误的原因。