Organisation hiérarchique des ressources pour la localisationHierarchical organization of resources for localization

Dans Visual Studio, les ressources localisées (les données comme des chaînes et des images adaptées à chaque culture) sont stockées dans des fichiers distincts et chargées en fonction du paramètre de culture de l’interface utilisateur.In Visual Studio, localized resources (data such as strings and images appropriate to each culture) are stored in separate files and loaded according to the UI culture setting. Pour comprendre comment les ressources localisées sont chargées, il est utile de les penser selon une organisation hiérarchique.To understand how localized resources are loaded, it is useful to think of them as organized in a hierarchical manner.

Types de ressources de la hiérarchieKinds of resources in the hierarchy

  • En haut de la hiérarchie se trouvent les ressources alternatives de secours pour votre culture par défaut, par exemple l’anglais (« en »).The fallback resources for your default culture, for example English ("en"), sit at the top of the hierarchy. Ce sont les seules ressources qui n’ont pas leur propre fichier : elles sont stockées dans l’assembly principal.These fallback resources are the only ones that do not have their own file; they are stored in the main assembly.

  • Sous les ressources de secours se trouvent les ressources des cultures neutres.Below the fallback resources are the resources for any neutral cultures. Une culture neutre est associée à une langue, mais pas à un pays/région.A neutral culture is associated with a language but not a country/region. Par exemple, Français (« fr ») est une culture neutre.For example, French ("fr") is a neutral culture. (Les ressources alternatives de secours sont également pour une culture neutre, mais une culture spéciale.)(The fallback resources are also for a neutral culture, but a special one.)

  • Les ressources pour des cultures spécifiques se trouvent sous les ressources de culture neutre.Below the neutral culture resources are the resources for any specific cultures. Une culture spécifique est associée à une langue et à un pays/région.A specific culture is associated with a language and a country/region. Par exemple, Français (Canada) (« fr-CA ») est une culture spécifique.For example, French Canadian ("fr-CA") is a specific culture.

    Si une application tente de charger une ressource localisée, comme une chaîne, et ne la trouve pas, elle remonte dans la hiérarchie jusqu’à trouver un fichier de ressources contenant la ressource demandée.If an application tries to load any localized resource, such as a string, and does not find it, it will travel up the hierarchy until it finds a resource file containing the requested resource.

    Le meilleur moyen de stocker vos ressources consiste à les généraliser autant que possible.The best way to store your resources is to generalize them as much as possible. Cela signifie stocker les chaînes, les images, etc. localisées dans des fichiers de ressources pour des cultures neutres au lieu de cultures spécifiques, chaque fois que c’est possible.That means to store localized strings, images, and so forth in resource files for neutral cultures rather than specific cultures whenever possible. Par exemple, si vous avez des ressources pour la culture Français (Belgique) (« fr-BE ») et que les ressources immédiatement au-dessus sont les ressources de secours en anglais, un problème peut se produire quand une personne utilise votre application sur un système configuré pour la culture Français (Canada).For instance, if you have resources for the French Belgian ("fr-BE") culture and the resources immediately above are the fallback resources in English, a problem may result when someone uses your application on a system configured for the French Canadian culture. Le système recherche un assembly satellite pour « fr-CA », mais ne le trouve pas : il charge donc l’assembly principal contenant la ressource de secours, qui est « Anglais », au lieu de charger les ressources « Français ».The system looks for a satellite assembly for "fr-CA" but doesn't find it, so loads the main assembly containing the fallback resource, English, instead of loading French resources. L’image suivante illustre ce scénario non souhaitable.The following picture shows this undesirable scenario.

    Ressources spécifiques uniquement

    Si vous suivez la pratique recommandée consistant à placer autant de ressources que possible dans un fichier de ressources neutres pour la culture « fr », l’utilisateur du Français (Canada) ne voit pas les ressources marquées pour la culture « fr-BE », mais il voit par contre les chaînes en français.If you follow the recommended practice of placing as many resources as possible in a neutral resource file for the "fr" culture, the French Canadian user would not see resources marked for the "fr-BE" culture, but would be shown strings in French. La situation suivante illustre ce scénario préféré.The following situation shows this preferred scenario.

    Graphique NeutralSpecificResources

Voir aussiSee also