C# 編譯器選項

本節說明 C# 編譯器所解譯的選項。 選項會根據控制的內容分組成不同文章群組,例如語言功能、程式碼產生和輸出。 使用目錄來巡覽這些選項。

設定選項的方法

在 .NET 專案中,有兩種不同的方法可以設定編譯器選項:

  • 在 *.csproj 檔案中

    您可以在 *.csproj 中,使用 XML 格式為任何編譯器選項新增 MSBuild 屬性。 屬性名稱與編譯器選項相同。 屬性值會設定編譯器選項的值。 例如,下列專案檔程式碼片段會設定 LangVersion 屬性。

    <PropertyGroup>
      <LangVersion>preview</LangVersion>
    </PropertyGroup>
    

    如需在專案檔中設定選項的詳細資訊,請參閱 .NET SDK 專案的 MSBuild 屬性

  • 使用 Visual Studio 屬性頁

    Visual Studio 提供屬性頁來編輯組建屬性。 若要了解詳情,請參閱管理專案和解決方案屬性 - Windows管理專案和解決方案屬性 - Mac

.NET Framework 專案

重要

本節僅適用於 .NET Framework 專案。

除了上述機制之外,您還可以使用兩種其他方法設定 .NET Framework 專案的編譯器選項:

  • 適用於 .NET Framework 專案的命令列引數:.NET Framework 專案使用 csc.exe 而非 dotnet build 來建立專案。 您可以在適用於 .NET Framework 專案的 csc.exe 中指定命令列引數。
  • 編譯的 ASP.NET 頁面:.NET Framework 專案使用 web.config 檔案中的一部分來編譯頁面。 若為新建立的系統和 ASP.NET Core 專案,則會從專案檔取得選項。

某些編譯器選項的字組會從 csc.exe 和 .NET Framework 專案變更為新的 MSBuild 系統。 本節使用新的語法。 這兩個版本都會列在每個頁面的頂端。 若是 csc.exe,則會在選項和冒號之後列出所有引數。 例如,-doc 選項會是:

-doc:DocFile.xml

您可以在命令提示字元中輸入 C# 編譯器的可執行檔名稱 (csc.exe),藉此叫用該編譯器。

若為 .NET Framework 專案,您也可以從命令列執行 csc.exe。 每個編譯器選項都能以兩種形式使用︰-option/option。 在 .NET Framework Web 專案中,您可以在 web.config 檔案中指定編譯程式碼後置的選項。 如需詳細資訊,請參閱 <compiler> 元素

如果您使用 [Visual Studio 的開發人員命令提示字元] 視窗,所有必要的環境變數都會自動完成設定。 如需如何存取此工具的詳細資訊,請參閱 Visual Studio 的開發人員命令提示字元

csc.exe 可執行檔通常位於 Windows 目錄下的 Microsoft.NET\Framework\<版本> 資料夾。 它的位置可能依據特定電腦的實際組態而有所不同。 如果您的電腦上安裝了多個版本的 .NET Framework,您將看到這個檔案的多個版本。 如需這類安裝的詳細資訊,請參閱如何:判斷安裝的 .NET Framework 版本