Поделиться через


<Элемент компилятора>

Задает атрибуты конфигурации компилятора для поставщика языка.

<configuration>
  <system.codedom>
    <Компиляторы>
      <Компилятора>

Синтаксис

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

Атрибуты и элементы

В следующих разделах описаны атрибуты, дочерние и родительские элементы.

Атрибуты

Атрибут Description
compilerOptions Необязательный атрибут элемента .

Задает дополнительные аргументы, относящиеся к компилятору, для компиляции. Значения атрибута compilerOptions обычно перечислены в разделе параметров компилятора для компилятора.
extension Обязательный атрибут элемента .

Предоставляет разделенный точкой с запятой список расширений имен файлов, используемых исходными файлами для поставщика языков. Например, ".cs".
language Обязательный атрибут элемента .

Предоставляет разделенный точкой с запятой список имен языков, поддерживаемых поставщиком языков. Например, "c#; Cs; csharp".
type Обязательный атрибут элемента .

Указывает имя типа поставщика языка, включая имя сборки, содержащей реализацию поставщика. Имя типа должно соответствовать требованиям, определенным в определении полных имен типов.
warningLevel Необязательный атрибут элемента .

Указывает уровень предупреждения компилятора по умолчанию; определяет уровень, на котором поставщик языка обрабатывает предупреждения компиляции как ошибки.

Дочерние элементы

Элемент Description
<Элемент providerOption> Задает атрибуты версии компилятора для поставщика языка.

Родительские элементы

Элемент Description
<Элемент configuration> Корневой элемент в любом файле конфигурации, используемом средой CLR и приложениями .NET Framework.
<Элемент system.codedom> Задает параметры конфигурации компилятора для доступных поставщиков языков.
<Элемент компиляторов> Контейнер для элементов конфигурации компилятора; содержит ноль или несколько <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>

См. также