C# Compiler Options Listed by Category

下列编译器选项按类别排序。关于按字母顺序排列的列表,请参阅按字母顺序列出的 C# 编译器选项

优化

选项 目标
/filealign 指定输出文件中各节的大小。
/optimize 启用/禁用优化。

输出文件

选项 目标
/doc 指定要将已处理的文档注释写入到的 XML 文件。
/out 指定输出文件。
/pdb 指定 .pdb 文件的文件名和位置。
/platform 指定输出平台。
/preferreduilang 指定编译器输出的语言。
/target 使用下列五个选项之一指定输出文件的格式:/target:appcontainerexe/target:exe/target:library/target:module/target:winexe/target:winmdobj
/modulename:<string> 指定源模块的名称

.NET Framework 程序集

选项 目标
/addmodule 指定一个或多个模块作为此程序集的一部分。
/delaysign 指示编译器添加公钥,但将此程序集保留为未签名状态。
/keycontainer 指定加密密钥容器的名称。
/keyfile 指定包含加密密钥的文件名。
/lib 指定通过 /reference 的方式引用的程序集的位置。
/nostdlib 指示编译器不导入标准库 (mscorlib.dll)。
/reference 从包含程序集的文件导入元数据。
/analyzer 从此程序集(缩写形式:/a)运行分析器
/additionalfile 命名其他文件,这些文件不会直接影响代码生成,但可能由分析器用于生成错误或警告。

调试/错误检查

选项 目标
/bugreport 创建一个文件,其中包含可以轻松报告 bug 的信息。
/checked 指定溢出数据类型边界的整数算法是否将导致运行时异常。
/debug 指示编译器发出调试信息。
/errorreport 设置错误报告行为。
/fullpaths 指定编译器输出中文件的绝对路径。
/nowarn 取消编译器对指定警告的生成。
/warn 设置警告等级。
/warnaserror 将警告提升为错误。
/ruleset:<file> 指定可禁用特定诊断的规则集文件。

预处理器

选项 目标
/define 定义预处理器符号。

资源

选项 目标
/link 使指定程序集中的 COM 类型信息对项目可用。
/linkresource 创建指向托管资源的链接。
/resource 将 .NET Framework 资源嵌入到输出文件。
/win32icon 指定要插入到输出文件的 .ico 文件。
/win32res 指定要插入到输出文件的 Win32 资源。

杂项

选项 目标
@ 指定响应文件。
/? 列出到 stdout 的编译器选项。
/baseaddress 指定要加载 DLL 的首选基址。
/codepage 指定要用于编译中所有源代码文件的代码页。
/help 列出到 stdout 的编译器选项。
/highentropyva 指定可执行文件支持地址空间布局随机化 (ASLR)。
/langversion 指定语言版本模式:ISO-1、ISO-2、3、4、5、6 或默认
/main 指定 Main 方法的位置。
/noconfig 指示编译器不使用 csc.rsp 进行编译。
/nologo 禁止显示编译器横幅信息。
/recurse 搜索要编译的源文件的子目录。
/subsystemversion 指定可执行文件可以使用的子系统的最低版本。
/unsafe 启用使用 unsafe 关键字的代码编译。
/utf8output 显示使用 UTF-8 编码的编译器输出。
/parallel[+|-] 指定是否使用并发生成 (+)。
/checksumalgorithm:<alg> 指定用于计算 PDB 中存储的源文件校验和的算法。支持的值为:SHA1(默认值)或 SHA256。

已过时的选项

| /incremental | 启用增量编译。 |

请参阅

C# Compiler Options

C# Compiler Options Listed Alphabetically

How to: Set Environment Variables for the Visual Studio Command Line