Share via


<compiler> 要素

言語プロバイダのコンパイラ設定属性を指定します。

<configuration> 要素   <system.codedom>      <compilers>         <compiler>

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

必須属性

属性 説明

language

言語プロバイダでサポートされる言語名のセミコロン区切りのリストを指定します。たとえば、"c#;cs;csharp" とします。

extension

言語プロバイダのソース ファイルで使用されるファイル名拡張子のセミコロン区切りのリストを指定します。たとえば、".cs" とします。

type

言語プロバイダの型名と、プロバイダの実装が含まれているアセンブリの名前を指定します。型名は、「完全修飾型名の指定」で定義されている要件を満たす必要があります。

省略可能属性

属性 説明

warningLevel

既定のコンパイラの警告レベルを指定します。言語プロバイダがコンパイラの警告をエラーとして扱うレベルを決定します。

compilerOptions

コンパイル用のその他のコンパイラ固有引数を指定します。

解説

<compiler> 要素では、特定の言語プロバイダ用のコンパイラ設定属性を指定します。プロバイダでは、特定の言語用に System.CodeDom.Compiler.CodeDomProvider クラスを拡張します。<compiler> 要素では、言語プロバイダ用にコンパイラとコード ジェネレータの設定を定義します。

.NET Framework では、マシン構成ファイル (Machine.config) 内にコンパイラの初期設定が定義されています。開発者やコンパイラの販売元では、新しい CodeDomProvider 実装用に構成の設定を追加できます。コンピュータ上の言語プロバイダおよびコンパイラの構成の設定をプログラムで列挙するには、System.CodeDom.Compiler.CodeDomProvider.GetAllCompilerInfo メソッドを使用します。

アプリケーションまたは Web の構成ファイル内のコンパイラ要素によって、マシン構成ファイル内の設定を補足またはオーバーライドできます。複数のプロバイダ実装で同じ言語名または同じファイル拡張子が設定されている場合は、最後に一致した設定で、その言語名またはファイル拡張子のそれまでの設定済みプロバイダがオーバーライドされます。

使用例

一般的なコンパイラ設定要素を次の例に示します。

<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=""
          warningLevel="1" />
     </compilers>
   </system.codedom>
</configuration>

構成ファイル

This element can be used in the machine configuration file and the application configuration file.

参照

関連項目

<compilers> 要素
compilation の compilers の compiler 要素 (ASP.NET 設定スキーマ)
CompilerInfo
CodeDomProvider

概念

完全修飾型名の指定

その他の技術情報

.NET Framework の構成ファイル スキーマ