<compiler> 元素

指定语言提供程序的编译器配置属性。

<配置>
   <system.codedom>
     <编译 器>
       <编译器>

Syntax

<compiler
  language="languageName[;...;...]"
  extension="fileExtension[;...;...]"
  type="typeName, assemblyName"
  warningLevel="number"
  compilerOptions="option1 option2"
/>

特性和元素

下列各节描述了特性、子元素和父元素。

特性

Attribute Description
compilerOptions 可选属性。

指定用于编译的其他特定于编译器的参数。 特性的值 compilerOptions 通常列在编译器的编译器选项主题中。
extension 必需属性。

提供语言提供程序的源文件使用的文件扩展名的分号分隔列表。 例如,“.cs”。
language 必需属性。

提供语言提供程序支持的语言名称的分号分隔列表。 例如,“c#;cs;csharp“.
type 必需属性。

指定语言提供程序的类型名称,包括包含提供程序实现的程序集的名称。 类型名称必须满足 指定完全限定类型名称中定义的要求。
warningLevel 可选属性。

指定默认编译器警告级别;确定语言提供程序将编译警告视为错误的级别。

子元素

元素 Description
<providerOption> 元素 指定语言提供程序的编译器版本属性。

父元素

元素 Description
<配置> 元素 公共语言运行时和 .NET Framework 应用程序所使用的每个配置文件中的根元素。
<system.codedom> 元素 指定可用语言提供程序的编译器配置设置。
<compilers> 元素 编译器配置元素的容器;包含零个或多个 <compiler> 元素。

注解

每个 <compiler> 元素指定特定语言提供程序的编译器配置属性。 提供程序扩展 System.CodeDom.Compiler.CodeDomProvider 特定语言的类;该 <compiler> 元素定义语言提供程序的编译器和代码生成器设置。

.NET Framework 在计算机配置文件(Machine.config)中定义初始编译器设置。 开发人员和编译器供应商可以为新 CodeDomProvider 实现添加配置设置。 CodeDomProvider.GetAllCompilerInfo使用该方法以编程方式枚举计算机上的语言提供程序和编译器配置设置。

应用程序或 Web 配置文件中的编译器元素可以补充或替代计算机配置文件中的设置。 如果为同一语言名称或同一文件扩展名配置了多个提供程序实现,则最后一个匹配的配置将替代该语言名称或文件扩展名的任何以前配置的提供程序。

配置文件

此元素可用于计算机配置文件和应用程序配置文件。

Example

以下示例演示了典型的编译器配置元素:

<configuration>
  <system.codedom>
    <compilers>
      <!-- zero or more compiler elements -->
      <compiler
        language="c#;cs;csharp"
        extension=".cs"
        type="Microsoft.CSharp.CSharpCodeProvider, System,
          Version=2.0.3600.0, Culture=neutral,
          PublicKeyToken=b77a5c561934e089"
        compilerOptions="/optimize"
        warningLevel="1" />
    </compilers>
  </system.codedom>
</configuration>

另请参阅