CodeDomProvider.GetLanguageFromExtension(String) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Gibt einen Sprachnamen zurück, der der angegebenen Dateinamenerweiterung zugeordnet ist, wie im Abschnitt für die CodeDomProvider Compilerkonfiguration konfiguriert.
public:
static System::String ^ GetLanguageFromExtension(System::String ^ extension);
[System.Runtime.InteropServices.ComVisible(false)]
public static string GetLanguageFromExtension(string extension);
[<System.Runtime.InteropServices.ComVisible(false)>]
static member GetLanguageFromExtension : string -> string
Public Shared Function GetLanguageFromExtension (extension As String) As String
Parameter
- extension
- String
Eine Dateinamenerweiterung.
Gibt zurück
Ein Sprachname, der der Dateinamenerweiterung zugeordnet ist, wie in den CodeDomProvider Compilerkonfigurationseinstellungen konfiguriert.
- Attribute
Ausnahmen
Auf extension diesem Computer ist kein konfigurierter Sprachanbieter installiert.
extension ist null.
Der Aufrufer verfügt nicht über die erforderliche Berechtigung.
Beispiele
Im folgenden Codebeispiel wird die CodeDomProvider Implementierung für eine Eingabedateierweiterung bestimmt und die konfigurierten Einstellungen für den Sprachanbieter angezeigt. Dieses Codebeispiel ist Teil eines größeren Beispiels, das für die CompilerInfo Klasse bereitgestellt wird.
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
Hinweise
Das <System.codedom-Element> in der Computerkonfigurationsdatei (Machine.config) enthält die Sprachanbieter- und Compilerkonfigurationseinstellungen für jede CodeDomProvider Implementierung auf dem Computer. Die GetLanguageFromExtension Methode durchsucht jedes Anbieterkonfigurationselement nach der angegebenen Dateinamenerweiterung.
Die IsDefinedExtension Methode überprüft, ob mindestens eine Anbieterimplementierung eine bestimmte Dateinamenerweiterung unterstützt. Sie können eine Dateinamenerweiterung mithilfe einer IsDefinedExtension Dateinamenerweiterung überprüfen, bevor Sie sie an GetLanguageFromExtension. Dadurch wird verhindert GetLanguageFromExtension , dass eine System.Configuration.ConfigurationException Nicht unterstützte Dateinamenerweiterung ausgelöst wird.
Wenn eine Anbieterimplementierung die Erweiterung für die Eingabedatei unterstützt und für diesen Anbieter mehrere unterstützte Sprachen konfiguriert sind, gibt GetLanguageFromExtension sie den Vornamen für diesen Anbieter zurück. Wenn mehr als eine Anbieterimplementierung für die Erweiterung der Eingabedatei konfiguriert ist, GetLanguageFromExtension wird der Sprachname aus dem letzten übereinstimmenden Anbieterkonfigurationselement zurückgegeben.
Bei Sprachnamen und Dateinamenerweiterungen wird die Groß-/Kleinschreibung nicht beachtet.