Прочитать на английском

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


CodeDomProvider.GetCompilerInfo(String) Метод

Определение

Возвращает параметры поставщика и компилятора языка для заданного языка.

public static System.CodeDom.Compiler.CompilerInfo GetCompilerInfo (string language);
[System.Runtime.InteropServices.ComVisible(false)]
public static System.CodeDom.Compiler.CompilerInfo GetCompilerInfo (string language);

Параметры

language
String

Имя языка.

Возвращаемое значение

Объект CompilerInfo, заполненный параметрами настроенной реализации CodeDomProvider.

Атрибуты

Исключения

Для языка, заданного в параметре language, на данном компьютере не настроен поставщик.

Значение параметра languagenull.

У вызывающего объекта отсутствует необходимое разрешение.

Примеры

В следующем примере кода определяется CodeDomProvider реализация языка ввода и отображаются настроенные параметры для поставщика языка. Этот пример входит в состав более крупного примера использования класса CompilerInfo.

CodeDomProvider provider;

// Check for a provider corresponding to the input language.
if (CodeDomProvider.IsDefinedLanguage(language))
{
    provider = CodeDomProvider.CreateProvider(language);

    // Display information about this language provider.

    Console.WriteLine("Language provider:  {0}",
        provider.ToString());
    Console.WriteLine();
    Console.WriteLine("  Default file extension:  {0}",
        provider.FileExtension);
    Console.WriteLine();

    // Get the compiler settings for this language.

    CompilerInfo langCompilerInfo = CodeDomProvider.GetCompilerInfo(language);
    CompilerParameters langCompilerConfig = langCompilerInfo.CreateDefaultCompilerParameters();

    Console.WriteLine("  Compiler options:        {0}",
        langCompilerConfig.CompilerOptions);
    Console.WriteLine("  Compiler warning level:  {0}",
        langCompilerConfig.WarningLevel);
}
else
{
    // Tell the user that the language provider was not found.
    Console.WriteLine("There is no provider configured for input language \"{0}\".",
        language);
}

Комментарии

Элемент< system.codedom> в файле конфигурации компьютера содержит параметры конфигурации поставщика языка и компилятора для каждой CodeDomProvider реализации на компьютере. Сведения о файлах конфигурации компьютера см. в разделе Файлы конфигурации компьютера статьи Настройка приложений. Метод GetCompilerInfo выполняет поиск указанного имени языка в каждом элементе конфигурации поставщика. Возвращенный CompilerInfo экземпляр содержит настроенные параметры поставщика языка и компилятора.

Метод IsDefinedLanguage проверяет, поддерживает ли хотя бы одна реализация поставщика определенный язык. Вы можете проверить имя языка с помощью IsDefinedLanguage перед его передачей в GetCompilerInfo. Это предотвращает создание System.Configuration.ConfigurationException при доступе к экземпляру CompilerInfo для неподдерживаемого имени языка.

Если для имени языка ввода настроено несколько реализаций поставщика, GetCompilerInfo возвращает параметры из последнего соответствующего элемента конфигурации поставщика.

В именах языков регистр не учитывается.

Применяется к

Продукт Версии
.NET Framework 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9

См. также раздел