CodeDomProvider.GetLanguageFromExtension(String) Méthode
Définition
Important
Certaines informations portent sur la préversion du produit qui est susceptible d’être en grande partie modifiée avant sa publication. Microsoft exclut toute garantie, expresse ou implicite, concernant les informations fournies ici.
Retourne un nom de langue associé à l’extension de nom de fichier spécifiée, tel qu’il est configuré dans la section configuration du CodeDomProvider compilateur.
public:
static System::String ^ GetLanguageFromExtension(System::String ^ extension);
public static string GetLanguageFromExtension(string extension);
[System.Runtime.InteropServices.ComVisible(false)]
public static string GetLanguageFromExtension(string extension);
static member GetLanguageFromExtension : string -> string
[<System.Runtime.InteropServices.ComVisible(false)>]
static member GetLanguageFromExtension : string -> string
Public Shared Function GetLanguageFromExtension (extension As String) As String
Paramètres
- extension
- String
Extension de nom de fichier.
Retours
Nom de langue associé à l’extension de nom de fichier, tel qu’il est configuré dans les paramètres de configuration du CodeDomProvider compilateur.
- Attributs
Exceptions
Le extension fournisseur de langage n’est pas configuré sur cet ordinateur.
extension a la valeur null.
L’appelant n’a pas l’autorisation requise.
Exemples
L’exemple de code suivant détermine l’implémentation CodeDomProvider d’une extension de nom de fichier d’entrée et affiche les paramètres configurés pour le fournisseur de langage. Cet exemple de code fait partie d’un exemple plus grand fourni pour la CompilerInfo classe.
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
Remarques
L’élément< system.codedom> dans le fichier de configuration de l’ordinateur (Machine.config) contient les paramètres de configuration du fournisseur de langage et du compilateur pour chaque CodeDomProvider implémentation sur l’ordinateur. La GetLanguageFromExtension méthode recherche chaque élément de configuration de fournisseur pour l’extension de nom de fichier spécifiée.
La IsDefinedExtension méthode vérifie si au moins une implémentation de fournisseur prend en charge une extension de nom de fichier spécifique. Vous pouvez valider une extension de nom de fichier à l’aide IsDefinedExtension d’une extension avant de la transmettre.GetLanguageFromExtension Cela empêche GetLanguageFromExtension de lever une System.Configuration.ConfigurationException extension de nom de fichier non prise en charge.
Si une implémentation de fournisseur prend en charge l’extension de nom de fichier d’entrée et qu’il existe plusieurs langues prises en charge configurées pour ce fournisseur, retourne GetLanguageFromExtension le premier nom de langue pour ce fournisseur. Si plusieurs implémentations de fournisseur sont configurées pour l’extension de nom de fichier d’entrée, GetLanguageFromExtension retourne le nom de langue du dernier élément de configuration du fournisseur correspondant.
Les noms de langage et les extensions de nom de fichier ne respectent pas la casse.