Share via


<compiler> 요소

언어 공급자에 대한 컴파일러 구성 특성을 지정합니다.

<configuration>
  <system.codedom>
    <compilers>
      <컴파일러>

구문

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

특성 및 요소

다음의 섹션은 특성, 자식 요소 및 부모 요소에 대해 설명합니다.

특성

특성 설명
compilerOptions 선택적 특성입니다.

컴파일에 대한 추가 컴파일러 관련 인수를 지정합니다. compilerOptions 특성의 값은 일반적으로 컴파일러에 대한 컴파일러 옵션 항목에 나열됩니다.
extension 필수 특성입니다.

언어 공급자에 대한 소스 파일에서 사용하는 파일 이름 확장명 목록을 세미콜론으로 구분하여 제공합니다. 예를 들어 ".cs"입니다.
language 필수 특성입니다.

언어 공급자가 지원하는 언어 이름의 세미콜론으로 구분된 목록을 제공합니다. 예를 들어 "c#; Cs; csharp".
type 필수 특성입니다.

공급자 구현을 포함하는 어셈블리의 이름을 포함하여 언어 공급자의 형식 이름을 지정합니다. 형식 이름은 정규화된 형식 이름 지정에 정의된 요구 사항을 충족해야 합니다.
warningLevel 선택적 특성입니다.

기본 컴파일러 경고 수준을 지정합니다. 는 언어 공급자가 컴파일 경고를 오류로 처리하는 수준을 결정합니다.

자식 요소

요소 설명
<providerOption> 요소 언어 공급자에 대한 컴파일러 버전 특성을 지정합니다.

부모 요소

요소 설명
<configuration> 요소 공용 언어 런타임 및 .NET Framework 애플리케이션에서 사용하는 모든 구성 파일의 루트 요소입니다.
<system.codedom> 요소 사용 가능한 언어 공급자에 대한 컴파일러 구성 설정을 지정합니다.
<compilers> 요소 컴파일러 구성 요소용 컨테이너입니다. 0개 이상의 <compiler> 요소가 포함되어 있습니다.

설명

<compiler> 요소는 특정 언어 공급자에 대한 컴파일러 구성 특성을 지정합니다. 공급자는 특정 언어에 대해 System.CodeDom.Compiler.CodeDomProvider 클래스를 확장합니다. <compiler> 요소는 언어 공급자에 대한 컴파일러 및 코드 생성기 설정을 정의합니다.

.NET Framework는 컴퓨터 구성 파일(Machine.config)의 초기 컴파일러 설정을 정의합니다. 개발자 및 컴파일러 공급업체는 새로운 CodeDomProvider 구현에 대한 구성 설정을 추가할 수 있습니다. CodeDomProvider.GetAllCompilerInfo 메서드를 사용하여 컴퓨터에서 언어 공급자 및 컴파일러 구성 설정을 프로그래밍 방식으로 열거할 수 있습니다.

애플리케이션 또는 웹 구성 파일의 컴파일러 요소는 컴퓨터 구성 파일의 설정을 보완하거나 재정의할 수 있습니다. 동일한 언어 이름 또는 동일한 파일 확장명에 대해 둘 이상의 공급자 구현이 구성된 경우 마지막으로 일치하는 구성이 해당 언어 이름 또는 파일 확장명에 대해 이전에 구성된 공급자를 재정의합니다.

구성 파일

이 요소는 컴퓨터 구성 파일 및 애플리케이션 구성 파일에서 사용할 수 있습니다.

예시

다음 예제는 일반적인 컴파일러 구성 요소를 보여 줍니다.

<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>

참고 항목