CodeDomProvider.IsDefinedExtension(String) メソッド

定義

ファイル名拡張子に、コンピューターで構成された CodeDomProvider の実装が関連付けられているかどうかをテストします。

public:
 static bool IsDefinedExtension(System::String ^ extension);
[System.Runtime.InteropServices.ComVisible(false)]
public static bool IsDefinedExtension(string extension);
[<System.Runtime.InteropServices.ComVisible(false)>]
static member IsDefinedExtension : string -> bool
Public Shared Function IsDefinedExtension (extension As String) As Boolean

パラメーター

extension
String

ファイル名拡張子。

返品

true 指定したファイル名拡張子に対して CodeDomProvider 実装が構成されている場合は。それ以外の場合は false

属性

例外

extensionnull です。

呼び出し元に必要なアクセス許可がありません。

次のコード例では、入力ファイル名拡張子の CodeDomProvider 実装を決定し、言語プロバイダーの構成済みの設定を表示します。 このコード例は、 CompilerInfo クラスに提供されるより大きな例の一部です。

if (fileExtension[0] != '.')
{
    fileExtension = "." + fileExtension;
}

// Get the language associated with the file extension.
if (CodeDomProvider.IsDefinedExtension(fileExtension))
{
    CodeDomProvider provider;
    String language = CodeDomProvider.GetLanguageFromExtension(fileExtension);

    Console.WriteLine("The language \"{0}\" is associated with file extension \"{1}\"",
        language, fileExtension);
    Console.WriteLine();

    // Next, check for a corresponding language provider.

    if (CodeDomProvider.IsDefinedLanguage(language))
    {
        provider = CodeDomProvider.CreateProvider(language);

        // Display information about this language provider.

        Console.WriteLine("Language provider:  {0}",
            provider.ToString());
        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 language provider associated with input file extension \"{0}\".",
        fileExtension);
}
If Not fileExtension.StartsWith(".") Then
   fileExtension = "." + fileExtension
End If

' Get the language associated with the file extension.
If CodeDomProvider.IsDefinedExtension(fileExtension) Then
   Dim provider As CodeDomProvider
   Dim language As String = CodeDomProvider.GetLanguageFromExtension(fileExtension)
   
   Console.WriteLine("The language ""{0}"" is associated with file extension ""{1}""", _
       language, fileExtension)
   Console.WriteLine()
   
   ' Check for a corresponding language provider.
   If CodeDomProvider.IsDefinedLanguage(language) Then
      provider = CodeDomProvider.CreateProvider(language)
      
      ' Display information about this language provider.
      Console.WriteLine("Language provider:  {0}", _
         provider.ToString())
      Console.WriteLine()
      
      ' Get the compiler settings for this language.
      Dim langCompilerInfo As CompilerInfo = CodeDomProvider.GetCompilerInfo(language)
      Dim langCompilerConfig As CompilerParameters = langCompilerInfo.CreateDefaultCompilerParameters()
      
      Console.WriteLine("  Compiler options:        {0}", _
          langCompilerConfig.CompilerOptions)
      Console.WriteLine("  Compiler warning level:  {0}", _
          langCompilerConfig.WarningLevel)
   End If
Else
   ' Tell the user that the language provider was not found.
   Console.WriteLine("There is no language provider associated with input file extension ""{0}"".", fileExtension)
End If

注釈

コンピューター構成ファイル (Machine.config) の <system.codedom> 要素 には、コンピューター上の各 CodeDomProvider 実装の言語プロバイダーとコンパイラ構成設定が含まれています。 IsDefinedExtension メソッドは、指定したファイル名拡張子のプロバイダー構成要素を検索します。

ファイル名拡張子では大文字と小文字が区別されません。

適用対象

こちらもご覧ください