ResourceManager.GetResourceSet(CultureInfo, Boolean, Boolean) 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.
Ruft die Ressource ab, die für eine bestimmte Kultur festgelegt wird.
public:
virtual System::Resources::ResourceSet ^ GetResourceSet(System::Globalization::CultureInfo ^ culture, bool createIfNotExists, bool tryParents);
public virtual System.Resources.ResourceSet? GetResourceSet (System.Globalization.CultureInfo culture, bool createIfNotExists, bool tryParents);
public virtual System.Resources.ResourceSet GetResourceSet (System.Globalization.CultureInfo culture, bool createIfNotExists, bool tryParents);
abstract member GetResourceSet : System.Globalization.CultureInfo * bool * bool -> System.Resources.ResourceSet
override this.GetResourceSet : System.Globalization.CultureInfo * bool * bool -> System.Resources.ResourceSet
Public Overridable Function GetResourceSet (culture As CultureInfo, createIfNotExists As Boolean, tryParents As Boolean) As ResourceSet
Parameter
- culture
- CultureInfo
Die Kultur, deren Ressourcen abgerufen werden sollen.
- createIfNotExists
- Boolean
true
, um den Ressourcensatz zu laden, falls er noch nicht geladen wurde; andernfalls false
.
- tryParents
- Boolean
true
, um Ressourcenfallback zu verwenden, um eine entsprechende Ressource zu laden, wenn der Ressourcensatz nicht gefunden werden kann; false
, um den Ressourcenfallback-Prozess zu umgehen.
Gibt zurück
Die Ressource, die für die angegebene Kultur festgelegt wurde.
Ausnahmen
Der culture
-Parameter ist null
.
tryParents
ist true
, es wurde kein passender Satz von Ressourcen gefunden, und es sind keine Ressourcen für die Standardkultur vorhanden.
Beispiele
Im folgenden Beispiel wird die GetResourceSet Methode aufgerufen, um kulturspezifische Ressourcen für die französische Kultur (Frankreich) abzurufen. Anschließend werden alle Ressourcen im Ressourcensatz aufgezählt. Es enthält den Quellcode für eine ausführbare Datei mit dem Namen ShowNumbers.exe. Außerdem enthält sie die folgenden beiden Textdateien, die die Namen von Zahlen enthalten. Der erste, NumberResources.txt, enthält die Namen von Zahlen von einer bis zu zehn in der englischen Sprache:
one=one
two=two
three=three
four=four
five=five
six=six
seven=seven
eight=eight
nine=nine
ten=ten
Die zweite, NumberResources.fr-FR.txt, enthält die Namen von Zahlen von einer bis vier in der französischen Sprache:
one=un
two=deux
three=trois
four=quatre
Sie können eine Batchdatei verwenden, um die Ressourcendateien zu generieren, die Datei der englischen Sprache in die ausführbare Datei einzubetten und eine Satellitenassembly für die französischen Sprachressourcen zu erstellen. Hier sehen Sie die Batchdatei, um eine ausführbare Datei mithilfe des Visual Basic Compilers zu generieren:
resgen NumberResources.txt
vbc shownumbers.vb /resource:NumberResources.resources
md fr-FR
resgen NumberResources.fr-FR.txt
al /out:fr-FR\ShowNumbers.resources.dll /culture:fr-FR /embed:NumberResources.fr-FR.resources
Für den C#-Compiler können Sie die folgende Batchdatei verwenden:
resgen NumberResources.txt
csc shownumbers.cs /resource:NumberResources.resources
md fr-FR
resgen NumberResources.fr-FR.txt
al /out:fr-FR\ShowNumbers.resources.dll /culture:fr-FR /embed:NumberResources.fr-FR.resources
using System;
using System.Globalization;
using System.Resources;
public class Example
{
public static void Main()
{
String[] numbers = { "one", "two", "three", "four", "five", "six",
"seven", "eight", "nine", "ten" };
var rm = new ResourceManager(typeof(NumberResources));
ResourceSet rs = rm.GetResourceSet(CultureInfo.CreateSpecificCulture("fr-FR"),
true, false);
if (rs == null) {
Console.WriteLine("No resource set.");
return;
}
foreach (var number in numbers)
Console.WriteLine("{0,-10} '{1}'", number + ":", rs.GetString(number));
}
}
internal class NumberResources {}
// The example displays the following output:
// one: 'un'
// two: 'deux'
// three: 'trois'
// four: 'quatre'
// five: ''
// six: ''
// seven: ''
// eight: ''
// nine: ''
// ten: ''
Imports System.Globalization
Imports System.Resources
Module Example
Public Sub Main()
Dim numbers() As String = { "one", "two", "three", "four", "five", "six", "seven", "eight", "nine", "ten" }
Dim rm As New ResourceManager(GetType(NumberResources))
Dim rs As ResourceSet = rm.GetResourceSet(CultureInfo.CreateSpecificCulture("fr-FR"), True, False)
If rs Is Nothing Then Console.WriteLine("No resource set.") : Exit Sub
For Each number In numbers
Console.WriteLine("{0,-10} '{1}'", number + ":", rs.GetString(number))
Next
End Sub
End Module
Public Class NumberResources
End Class
' The example displays the following output:
' one: 'un'
' two: 'deux'
' three: 'trois'
' four: 'quatre'
' five: ''
' six: ''
' seven: ''
' eight: ''
' nine: ''
' ten: ''
Beachten Sie, dass wenn Sie den Wert des createIfNotExists
Arguments ändernfalse
, gibt der Methodenaufruf zurücknull
, da Resource Manager die französischen Sprachressourcen nicht bereits geladen hat.
Hinweise
Der ressourcensatz, der zurückgegeben wird, stellt die Ressourcen dar, die für die angegebene Kultur lokalisiert sind. Wenn die Ressourcen für diese Kultur nicht lokalisiert wurden und tryParents
true
ist, GetResourceSet verwendet Ressourcen-Fallbackregeln, um eine entsprechende Ressource zu laden. false
Wenn tryParents
es sich um einen kulturspezifischen Ressourcensatz handelt, der nicht gefunden werden kann, gibt die Methode zurücknull
. Weitere Informationen zum Ressourcen-Fallback finden Sie im Abschnitt "Resource Fallback Process" im Artikel " Packen und Bereitstellen von Ressourcen ".