Cet article a fait l’objet d’une traduction automatique. Pour afficher l’article en anglais, activez la case d’option Anglais. Vous pouvez également afficher le texte anglais dans une fenêtre contextuelle en faisant glisser le pointeur de la souris sur le texte traduit.
Traduction
Anglais

ResourceManager.GetResourceSet méthode (CultureInfo, Boolean, Boolean)

 

Date de publication : novembre 2016

Récupère la ressource définie pour une culture particulière.

Espace de noms:   System.Resources
Assembly:  mscorlib (dans mscorlib.dll)

public virtual ResourceSet GetResourceSet(
	CultureInfo culture,
	bool createIfNotExists,
	bool tryParents
)

Paramètres

culture
Type: System.Globalization.CultureInfo

Culture dont les ressources doivent être récupérées.

createIfNotExists
Type: System.Boolean

true pour charger le jeu de ressources, s'il n'a pas encore été chargé, sinon false.

tryParents
Type: System.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. (Consultez la section Notes).

Valeur de retour

Type: System.Resources.ResourceSet

Ensemble de ressources pour la culture spécifiée.

Exception Condition
ArgumentNullException

Le paramètre culture a la valeur null.

MissingManifestResourceException

tryParents est true, aucun ensemble de ressources pouvant être utilisé n’a été trouvé et aucune ressource de culture par défaut.

Le jeu de ressources qui est 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 est true, GetResourceSet utilise les règles de secours pour charger une ressource appropriée. Si tryParents est false et un ensemble de ressources de culture spécifique est introuvable, la méthode retourne null. Pour plus d’informations sur les ressources de secours, consultez la section « Le processus de secours » dans la Empaquetage et déploiement de ressources dans des applications de bureau l’article.

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 dans l’ensemble de ressources. Il contient le code source pour un fichier exécutable nommé ShowNumbers.exe. Il inclut également le fichier deux texte suivant qui contiennent les noms des nombres. Le premier, NumberResources.txt, contient les noms des nombres de 1 à 10 en anglais :


one=one
two=two
three=three
four=four
five=five
six=six
seven=seven
eight=eight
nine=nine
ten=ten

La seconde, NumberResources.fr-fr.txt, contient les noms des nombres de 1 à 4 dans la langue Français :


one=un
two=deux
three=trois
four=quatre

Vous pouvez utiliser un fichier de commandes pour générer les fichiers de ressources, incorporer le fichier de ressources de langue anglaise dans le fichier exécutable et créer un assembly satellite pour les ressources de langue Français. Voici le fichier de commandes pour générer un fichier 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

Le compilateur c#, vous pouvez utiliser le fichier de commandes 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:       ''

Note that if you change the value of the createIfNotExists argument to false, the method call returns null, since Resource Manager has not already loaded the French language resources.

ReflectionPermission

when invoked late-bound through mechanisms such as M:System.Type.InvokeMember(System.String,System.Reflection.BindingFlags,System.Reflection.Binder,System.Object,System.Object[],System.Reflection.ParameterModifier[],System.Globalization.CultureInfo,System.String[]). Associated enumeration: F:System.Security.Permissions.ReflectionPermissionFlag.MemberAccess.

.NET Framework
Disponible depuis 1.1
Silverlight
Disponible depuis 2.0
Silverlight pour Windows Phone
Disponible depuis 7.0
Retour au début
Afficher: