/langversion(符合规范的语法)(C# 编译器选项)
更新:2007 年 11 月
导致编译器只接受 ISO/IEC 23270:2003 C# 语言规范中包含的语法。
/langversion:option
参数
option
如果 option 为 ISO-1,则对于未在 ISO/IEC 23270:2003 C# 语言规范中的任何语法,编译器将生成一个错误。如果 option 为 ISO-2,则对于未在 ISO/IEC 23270:2006 C# 语言规范中的任何语法,编译器将生成一个错误。
如果 option 为 default,则编译器将接受所有有效的语言语法。/langversion:default 是默认值。
备注
C# 规范的版本 1.0 表示可用于 /langversion:ISO-1 的功能。Visual Studio 开发人员中心包含 Microsoft Word 文件格式的所有规范。ISO/IEC 23270:2006 规范可以从以下网址获取:http://standards.iso.org/ittf/PubliclyAvailableStandards/c042926_ISO_IEC_23270_2006(E).zip。
C# 应用程序所引用的元数据不受 /langversion 编译器选项的影响。
由于 C# 编译器的每个版本都包含语言规范的扩展,因此 /langversion 不提供该编译器早期版本的等效功能。
无论您使用的是何种 /langversion 设置,都将使用当前版本的公共语言运行时来创建 .exe 或 .dll。这种情况的一个例外是友元程序集和 /moduleassemblyname(指定模块的友元程序集)(C# 编译器选项),它们用于 /langversion:ISO-1。
在 Visual Studio 开发环境中设置此编译器选项
打开项目的“属性”页。有关详细信息,请参见如何:设置生成属性 (C#)。
单击“生成”属性页。
单击“高级”按钮。
修改“语言版本”属性。
有关如何以编程方式设置此编译器选项的信息,请参见 LanguageVersion。