ResourceManager.GetResourceSet(CultureInfo, Boolean, Boolean) 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.
Récupère la ressource définie pour une culture particulière.
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
Paramètres
- culture
- CultureInfo
Culture dont les ressources doivent être récupérées.
- createIfNotExists
- Boolean
true
pour charger le jeu de ressources, s'il n'a pas encore été chargé, sinon false
.
- tryParents
- Boolean
true
pour utiliser le secours pour les ressources pour charger une ressource appropriée si l'ensemble de ressources est introuvable ; false
pour ignorer le processus de secours.
Retours
Ensemble de ressources pour la culture spécifiée.
Exceptions
Le paramètre culture
a la valeur null
.
tryParents
est true
, aucun ensemble de ressources n'est trouvé et il n'existe pas de ressources de culture par défaut.
Exemples
L’exemple suivant appelle la GetResourceSet méthode pour récupérer des ressources spécifiques à la culture pour la culture Français (France). Il énumère ensuite toutes les ressources du jeu de ressources. Il contient le code source d’un exécutable nommé ShowNumbers.exe. Il inclut également les deux fichiers texte suivants qui contiennent les noms des nombres. La première, NumberResources.txt, contient les noms de nombres de un à dix en anglais :
one=one
two=two
three=three
four=four
five=five
six=six
seven=seven
eight=eight
nine=nine
ten=ten
La deuxième, NumberResources.fr-FR.txt, contient les noms de nombres de un à quatre dans la langue Français :
one=un
two=deux
three=trois
four=quatre
Vous pouvez utiliser un fichier batch pour générer les fichiers de ressources, incorporer le fichier de ressources de langue anglaise dans l’exécutable et créer un assembly satellite pour les ressources linguistiques Français. Voici le fichier batch pour générer un exécutable à l’aide du compilateur Visual Basic :
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
Pour le compilateur C#, vous pouvez utiliser le fichier batch suivant :
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: ''
Notez que si vous modifiez la valeur de l’argument createIfNotExists
en false
, l’appel de méthode retourne null
, car Resource Manager n’a pas encore chargé les ressources de langue Français.
Remarques
L’ensemble de ressources retourné représente les ressources localisées pour la culture spécifiée. Si les ressources n’ont pas été localisées pour cette culture et tryParents
true
est , GetResourceSet utilise des règles de secours de ressources pour charger une ressource appropriée. Si tryParents
est et qu’un false
jeu de ressources spécifique à la culture est introuvable, la méthode retourne null
. Pour plus d’informations sur les ressources de secours, consultez la section « Processus de secours des ressources » dans l’article Empaquetage et déploiement de ressources .