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


Элемент <compiler>

Обновлен: Ноябрь 2007

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

Элемент <configuration>
  Элемент <system.codedom>
    Элемент <compilers>
      Элемент <compiler>

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

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

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

Атрибуты

Атрибут

Описание

compilerOptions

Необязательный атрибут.

Задает дополнительные аргументы компилятора для использования при компиляции. Значения атрибута compilerOptions обычно перечислены в разделе компилятора, посвященном параметрам компилятора. Чтобы найти информацию о параметрах компилятора в документации по Visual Studio 2005, см. "параметры компилятора" в предметном указателе.

extension

Обязательный атрибут.

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

language

Обязательный атрибут.

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

type

Обязательный атрибут.

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

warningLevel

Необязательный атрибут.

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

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

Отсутствуют.

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

Элемент

Описание

Элемент <configuration>

Корневой элемент в любом файле конфигурации, используемом средой CLR и приложениями .NET Framework.

Элемент <system.codedom>

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

Элемент <compilers>

Контейнер для элементов конфигурации компилятора; не содержит или содержит от одного и более элементов <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>

См. также

Основные понятия

Указание полных имен типов

Ссылки

CompilerInfo

CodeDomProvider

Элемент <compilers>

Элемент compiler для элемента compilers для элемента compilation (схема параметров ASP.NET)

Другие ресурсы

Схема файлов конфигурации для .NET Framework