Localiser des solutions SharePointLocalize SharePoint solutions

Le processus de préparation de vos applications afin qu’elles puissent être utilisées mondialement est appelé localisation.The process of preparing your applications so that they can be used worldwide is known as localization. La localisation est traduction de ressources pour une culture spécifique.Localization is translating resources to a specific culture. Pour plus d’informations, consultez Globalizing and Localizing Applications.For more information, see Globalizing and Localizing Applications. Cette rubrique fournit une vue d’ensemble de la localisation d’une solution SharePoint.This topic provides an overview on how to localize a SharePoint solution.

Pour localiser une solution, vous supprimez des chaînes codées en dur à partir du code et les rendez abstraites dans des fichiers de ressources.To localize a solution, you remove hard-coded strings from the code and abstract them into resource files. Un fichier de ressources est un XMLXML-en fonction du fichier avec un .resx extension.A Resource file is an XMLXML-based file with a .resx extension. Le fichier de ressources contient les versions traduites des chaînes utilisées dans votre solution.The resource file contains the translated versions of the strings used in your solution. Pour plus d’informations, consultez ressources dans les Applications.For more information, see Resources in Applications.

Note

Ajouter des ressources de type chaîne uniquement aux fichiers de ressources de solution SharePoint.Add only string resources to SharePoint solution resource files. Bien que l’éditeur de ressources permet d’ajouter des ressources, des ressources ne déploient pas sur SharePoint.Although the Resource Editor enables you to add non-string resources, non-string resources do not deploy to SharePoint.

Fichiers de ressourcesResource files

Il existe trois types de fichiers de ressources : par défaut, indépendant de la langue et spécifique à la langue.There are three kinds of resource files: default, language-neutral, and language-specific.

Type de fichier de ressourcesResource File Type DescriptionDescription
Par défautDefault Également appelé une ressource de secours, les fichiers de ressources par défaut contiennent des chaînes localisées pour la culture par défaut, par exemple l’anglais.Also known as a fallback resource, default resource files contain strings localized for the default culture, such as English. Ils sont utilisés si aucun fichier de ressource localisée pour la langue spécifiée ne peut être trouvée.They are used if no localized resource files for the specified language can be found. Ressources par défaut n’ont pas de fichiers distincts, ils sont stockés dans l’assembly principal de l’application.Default resources do not have separate files, they are stored in the main application assembly.
Indépendante du langageLanguage-neutral Un fichier de ressources qui contient des chaînes localisées pour une langue, mais pas une culture spécifique.A resource file that contains strings localized for a language, but not a specific culture. Par exemple, « fr » pour Français.For example, "fr" for French.
Spécifique au langageLanguage-specific Un fichier de ressources qui contient des chaînes localisées pour une langue et une culture.A resource file that contains strings localized for a language and a culture. Par exemple, « fr-CA » pour Français canadien.For example, "fr-CA" for French Canadian.

Pour plus d’informations, consultez organisation hiérarchique des ressources pour la localisation.For more information, see Hierarchical Organization of Resources for Localization.

Pour spécifier les fichiers de ressources par défaut dans les projets SharePoint que vous développez dans Visual StudioVisual Studio, choisissez langue indifférente (pays indifférent) dans la liste de la culture de la ajouter une ressource boîte de dialogue lorsque vous Ajouter un fichier de ressources.To specify default resource files in SharePoint projects that you develop in Visual StudioVisual Studio, choose Invariant Language (Invariant Country) in the culture list of the Add Resource dialog box when you add a resource file.

Localiser des solutions de Visual Studio SharePointLocalize Visual Studio SharePoint solutions

Lorsque vous localisez une solution, vous devez envisager toutes les informations textuelles que votre solution affiche aux utilisateurs.When you localize a solution, you should consider all of the textual information that your solution displays to users. Messages d’information, messages d’erreur, et Interface utilisateurUI chaînes doivent être traduits et ces traductions placées dans les fichiers de ressources.Informational messages, error messages, and Interface utilisateurUI strings must be translated and those translations placed in the resource files.

Chaque chaîne dans un fichier de ressources a un identificateur unique.Every string in a resource file has a unique identifier. Utilisez le même identificateur pour la chaîne traduite dans chaque fichier de ressources.Use the same identifier for the translated string in each resource file. Par exemple, si « String1 » est l’identificateur de la première chaîne dans le fichier de ressources par défaut, vous pouvez utiliser le même identificateur pour la première chaîne dans les fichiers de ressources linguistiques.For example, if "String1" is the identifier for the first string in the default resource file, use the same identifier for the first string in the language-specific resource files.

Il existe trois domaines vous localisez généralement dans Visual StudioVisual Studio applications SharePoint : fonctionnalités, le balisage de page ASPX et le code.There are three areas you typically localize in Visual StudioVisual Studio SharePoint applications: features, ASPX page markup, and code. À des fins d’illustration, les sections suivantes supposent que d’une solution SharePoint que vous souhaitez localiser en allemand et japonais.For purposes of illustration, the following sections assume you have a SharePoint solution that you want to localize into German and Japanese. La langue par défaut est l’anglaise.The default language is English.

Localiser des fonctionnalitésLocalize features

Pour localiser une fonctionnalité, vous devez remplacer le titre codé en dur et la description de la fonctionnalité avec une expression qui référence le titre traduite et la chaîne dans le fichier de ressources localisées.To localize a feature, you have to replace the hard-coded title and description of the feature with an expression that references the translated title and string in the localized resources file. Vous effectuez cette modification dans le Concepteur de fonctionnalités dans Visual StudioVisual Studio.You make this change in the Feature Designer in Visual StudioVisual Studio. Pour plus d’informations, consultez Comment : localiser une fonctionnalité.For more information, see How to: Localize a feature.

Pour localiser votre fonctionnalité anglaise en allemand et en japonais, vous ajoutez trois éléments de projet de fichier de ressources à votre projet : un pour l’anglais, un pour l’allemand et un pour le japonais.To localize your English feature into German and Japanese, you add three Resource File project items to your project: one for English, one for German, and one for Japanese. Fichiers de ressources de fonctionnalité ne peut pas être utilisés pour localiser le balisage ASPX ou le code ; fichiers de ressources séparés sont nécessaires.Feature resource files cannot be used to localize ASPX markup or code; separate resource files are required for them.

Après avoir créé la fonctionnalité fichiers de ressources, leur ajouter des chaînes traduites.After you create the feature resource files, add translated strings to them. Accéder aux chaînes localisées avec une expression au format suivant :Access the localized strings with an expression in the following format:

$Resources:String ID  

Ressources de fonctionnalité dans Visual StudioVisual Studio sont toujours nommées Resources.Feature resources in Visual StudioVisual Studio are always named Resources. Si vous sélectionnez une langue autre que langue indifférente, puis une culture IDID est ajouté au nom du fichier de ressources.If you select a language other than Invariant Language, then a culture IDID is added to the resource file name. Par exemple, si vous ajoutez un fichier de ressources de fonctionnalité de langue indifférente (par défaut), il est appelé Resources.resx.For example, if you add an invariant language (default) feature resource file, it is called Resources.resx. Si vous ajoutez une ressource de fonctionnalité de langage spécifique en sélectionnant la culture Japonais (Japon), le fichier est appelé Resources.ja-JP.resx.If you add a language-specific feature resource by selecting a culture of Japanese (Japan), the file is called Resources.ja-JP.resx. Noms de fichiers de ressources de fonctionnalité sont automatiquement assignés et ne peut pas être modifiés.Feature resource file names are automatically assigned and cannot be changed.

La portée des ressources de fonctionnalité est locale à la fonctionnalité, à qu'ils sont ajoutés.The scope of feature resources is local to the feature they are added to. Pour créer des ressources qui peuvent être utilisées par n’importe quel fichier de fonctionnalité ou un élément dans la solution, ajoutez un fichier de ressources Global élément de projet au lieu d’un fichier de ressources de fonctionnalité.To create resources that can be used by any feature or element file in the solution, add a Global Resources File project item instead of a feature resource File. Le fichier de ressources Global élément de projet se trouve dans le 2010 dossier sous SharePoint dans le ajouter un nouvel élément boîte de dialogue.The Global Resources File project item is located in the 2010 folder under SharePoint in the Add New Item dialog box. Déploiement des fichiers de ressources globales dans le dossier \Resources du dossier racine SharePoint.Global resources files deploy to the \Resources folder of the SharePoint root folder.

Localiser le balisage de page ASPXLocalize ASPX page markup

Pour localiser ASP.NETASP.NET pages, vous ajoutez trois éléments de projet de fichier de ressources à votre projet : un pour l’anglais, un pour l’allemand et un pour le japonais.To localize ASP.NETASP.NET pages, you add three Resources File project items to your project: one for English, one for German, and one for Japanese. Si vous n’avez pas de localiser le code en plus du balisage, vous pouvez ajouter à la place les fichiers de ressources globales.If you do not have to localize code in addition to the markup, you can instead add Global Resources Files.

Fournissez un nom pour le fichier de ressources de langue par défaut.Provide a name for the default language resource file. Donner les fichiers de ressources localisés le même nom que celui ajouté avec la culture spécifique au langage IDID.Give the localized resource files the same name appended with the language-specific culture IDID. Par exemple, MyAppResources.de-de.resx pour l’allemand et MyAppResources.ja-JP.resx pour le japonais.For example, MyAppResources.de-DE.resx for German and MyAppResources.ja-JP.resx for Japanese.

Définir le Type de déploiement propriété de chaque fichier de ressources à AppGlobalResource.Set the Deployment Type property of each resource file to AppGlobalResource. Cela entraîne des fichiers de ressources à déployer dans le dossier App_GlobalResources, où ils sont disponibles pour toutes les pages ASPX et les contrôles dans la solution.This causes the resource files to deploy to the App_GlobalResources folder, where they are available to all ASPX pages and controls in the solution. Le dossier App_GlobalResources se trouve dans C:\inetpub\wwwroot\wss\VirtualDirectories\< numéro de port>\App_GlobalResources.The App_GlobalResources folder is located in C:\inetpub\wwwroot\wss\VirtualDirectories\<port number>\App_GlobalResources.

Note

Si vous utilisez des fichiers de ressources non globales, déplacez-les vers le dossier d’éléments de projet pour activer la propriété Type de déploiement et autres propriétés spécifiques à SharePoint.If you use non-global resource files, move them into the project item folder to enable the Deployment Type property and other SharePoint-specific properties.

Fichiers de ressources de balisage ASPX peuvent également être utilisés pour localiser le code.ASPX markup resource files can also be used to localize code. Si vous utilisez les ressources pour localiser le code en plus du balisage ASPX, conservez le paramètre de propriété Action de génération de chaque fichier en tant que ressource incorporée afin que la ressource à compiler dans un assembly satellite.If you are using the resources to localize code in addition to ASPX markup, leave the Build Action property setting of each file as Embedded Resource to cause the resource to compile into a satellite assembly. Toutefois, si vous utilisez les fichiers de ressources uniquement pour localiser le balisage, vous pouvez éventuellement modifier Action de génération au contenu pour empêcher que le fichier qui est compilé dans l’assembly principal de l’application.However, if you are using the resource files only to localize markup, you can optionally change Build Action to Content to prevent the file from being compiled into the main application assembly.

Remplacez toutes les chaînes de propriété codées en dur dans votre balisage de pages et contrôles ASPX par une expression au format suivant :Replace all hard-coded property strings in your ASPX pages and controls markup with an expression in the following format:

<asp:<class> runat="server" Text="<%$Resources:<Resource File Name>, <String ID>%>" />  

Exemple :For example:

<asp:Button ID="btn1" runat="server" onclick="btn1_Click" Text="<%$Resources:Resource1,String7%>"></asp:Button>  

Pour ASPX comme texte, utilisez une expression au format suivant :For ASPX as text, use an expression in the following format:

<asp:literal ID="<ID>" runat="server" Text="<%$Resources:<Resource File Name>, <String ID>%>" />  

Exemple :For example:

<asp:literal ID="Literal1" runat="server" Text="<%$Resources:Resource1, String9%>" />  

Pour plus d’informations, consultez Comment : le balisage ASPX localiser.For more information, see How to: Localize ASPX markup.

Localiser le codeLocalize code

Outre la localisation des chaînes de fonctionnalité et ASP.NETASP.NET balisage, vous devez également localiser les chaînes de message et les chaînes d’erreur qui s’affichent dans le code de votre solution.In addition to localizing Feature strings and ASP.NETASP.NET markup, you also have to localize the message strings and error strings that appear in your solution code. D’information localisés et les messages d’erreur sont contenus dans des assemblys satellites.Localized informational and error messages are contained in satellite assemblies. Les assemblys satellites contiennent des chaînes qui sont visibles aux utilisateurs, tel que Interface utilisateurUI messages texte et de sortie comme les exceptions.Satellite assemblies contain strings that are visible to users, such as Interface utilisateurUI text and output messages like exceptions.

Visual StudioVisual Studio utilise le modèle de hub- and -spoke .NET Framework standard. uses the standard .NET Framework hub and spoke model. Le hub, ou assembly de programme principal, contient les ressources de langue par défaut.The hub, or main program assembly, contains the default language resources. Les spokes, ou assemblys satellites, contiennent les ressources spécifiques au langage.The spokes, or satellite assemblies, contain the language-specific resources. Pour plus d’informations, consultez Empaquetage et déploiement de ressources.For more information, see Packaging and Deploying Resources. Les assemblys satellites sont compilés à partir de la ressource (.resx) les fichiers.Satellite assemblies are compiled from resource (.resx) files. Lorsque vous ajoutez des fichiers de ressources spécifiques à la langue à votre projet et le package de solution, Visual StudioVisual Studio compile les fichiers de ressources dans des assemblys satellites nommés {nom_projet}.resources.dll.When you add language-specific resource files to your project and the solution package, Visual StudioVisual Studio compiles the resource files into satellite assemblies named {Project Name}.resources.dll.

Comme avec le balisage ASPX, localisez le code d’application SharePoint en ajoutant des éléments de projet de fichier de ressources distincts pour votre projet ; un pour la langue par défaut et un pour chaque langue est localisée.As with ASPX markup, localize SharePoint application code by adding separate Resources File project items to your project; one for the default language and one for each localized language. Toutefois, comme mentionné précédemment, si vous avez déjà des fichiers de ressources pour la localisation du balisage ASPX, vous pouvez les réutiliser pour la localisation du code.However, as mentioned previously, if you already have resource files for localizing ASPX markup, you can reuse them for localizing code. Si vous avez besoin créer des fichiers de ressources, nommez le fichier de ressources de langue par défaut de votre choix, avec un .resx extension.If you need to create resource files, give the default language resource file a name of your choice appended with a .resx extension. Nommez les fichiers de ressources localisés le même nom que celui ajouté avec la culture spécifique au langage IDID.Name the localized resource files the same name appended with the language-specific culture IDID. La propriété Action de génération de chaque fichier de ressources la valeur ressource incorporée pour permettre la création d’assemblys de ressources satellites.Set the Build Action property of each resource file to Embedded Resource to enable the creation of satellite resource assemblies.

Pour créer les assemblys satellites, générez le projet, puis ajoutez les fichiers comme assemblys supplémentaires via le avancé onglet de la Concepteur de packages.To create the satellite assemblies, build the project and then add the files as additional assemblies through the Advanced tab of the Package Designer. Lorsque vous ajoutez les assemblys, ajoutez une culture IDID dossier pour le chemin d’accès de l’emplacement, tel que fr-fr\{nom d’élément de projet}.resources.dll.When adding the assemblies, prepend a culture IDID folder to the Location path, such as de-DE\{Project Item Name}.resources.dll. Cela permet au package contenir les fichiers qui ont le même nom.This allows the package to contain files that have the same name.

Dans votre code, remplacez les chaînes codées en dur avec les appels à la GetGlobalResourceObject méthode à l’aide de la syntaxe suivante :In your code, replace hard-coded strings with calls to the GetGlobalResourceObject method using the following syntax:

HttpContext.GetGlobalResourceObject("<Resource File Name>", "<String ID>")  

Pour plus d’informations, consultez Comment : localiser du code.For more information, see How to: Localize code.

Localisation du code Web partieWeb part code localization

Composants WebPart inclure une fonctionnalité d’éditeur de propriété personnalisée qui inclut des attributs de code qui utilisent des chaînes codées en dur, par exemple WebDisplayName, Category et WebDescription.Web parts include a custom property editor feature that includes code attributes that use hard-coded strings, such as WebDisplayName, Category, and WebDescription. Pour remplacer les valeurs de chaîne pour ces attributs, créez une classe séparée qui dérive de la classe de l’attribut.To replace the string values for these attributes, create a separate class that derives from the attribute's class. Dans ces classes, définissez la propriété de l’attribut.In those classes, set the attribute's property. La propriété d’attribut dépend de la classe de base.The attribute property depends on the base class. Par exemple, la propriété d’attribut WebDisplayName est DisplayNameValue et la propriété d’attribut WebDescription est DescriptionValue.For example, the WebDisplayName attribute property is DisplayNameValue and the WebDescription attribute property is DescriptionValue.

Dans la classe dérivée, référencez l’ID de chaîne à partir du fichier de ressources et l’objet ResourceManager pour obtenir la valeur localisée pour l’ID de chaîne.In the derived class, reference the string ID from the resource file and the ResourceManager object to get the localized value for the string ID. Retourne cette valeur à l’attribut d’éditeur de propriété.Return this value to the property editor attribute.

Voir aussiSee also

Comment : localiser une fonctionnalité How to: Localize a feature
Comment : localiser le balisage ASPX How to: Localize ASPX markup
Comment : localiser du code How to: Localize code
Comment : ajouter un fichier de ressources How to: Add a resource file
Comment : utiliser un fichier de ressources pour spécifier des noms localisés, propriétés et autorisationsHow to: Use a resource file to specify localized names, properties, and permissions