次の方法で共有


<compiler> 要素

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

<構成>
   <system.codedom>
     <コンパイラ>
       <コンパイラ>

構文

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

属性および要素

以降のセクションでは、属性、子要素、および親要素について説明します。

Attributes

特性 Description
compilerOptions 省略可能な属性です。

コンパイル用の追加のコンパイラ固有の引数を指定します。 compilerOptions属性の値は、通常、コンパイラのコンパイラ オプション のトピックに記載されています。
extension 必須の属性。

言語プロバイダーのソース ファイルで使用されるファイル名拡張子のセミコロン区切りの一覧を提供します。 たとえば、".cs" などです。
language 必須の属性。

言語プロバイダーでサポートされている言語名のセミコロン区切りの一覧を提供します。 たとえば、"c#;cs;csharp"
type 必須の属性。

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

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

子要素

要素 Description
<providerOption> 要素 言語プロバイダーのコンパイラ バージョン属性を指定します。

親要素

要素 Description
<configuration> 要素 共通言語ランタイムおよび .NET Framework アプリケーションで使用されるすべての構成ファイルのルート要素です。
<system.codedom> 要素 使用可能な言語プロバイダーのコンパイラ構成設定を指定します。
<compilers> 要素 コンパイラ構成要素のコンテナー。には、0 個以上の <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>

こちらも参照ください