SPUserResource - Classe

Représente une ressource localisable définis par l'utilisateur.

Hiérarchie d’héritage

System.Object
  Microsoft.SharePoint.SPUserResource

Espace de noms :  Microsoft.SharePoint
Assembly :  Microsoft.SharePoint (dans Microsoft.SharePoint.dll)

Syntaxe

'Déclaration
Public NotInheritable Class SPUserResource
'Utilisation
Dim instance As SPUserResource
public sealed class SPUserResource

Remarques

Une ressource de l'utilisateur est une chaîne qui contient le texte qui est utilisée par l'interface utilisateur multilingue (MUI). Par exemple, une ressource peut représenter la description d'un site Web. Dans ce cas, un objet unique SPUserResource représentant la description serait contiennent du texte utilisé pour chacune des cultures prises en charge par le site Web.

Lorsqu'une ressource est créée, le texte de toutes les cultures est dans la langue par défaut du site Web. Par la suite, une personne peut traduire le texte d'une culture spécifique et ajouter la traduction à la ressource, en remplaçant le texte non traduit. Une façon de procéder est pour définir la propriété Thread.CurrentUICulture du thread en cours d'exécution sur la culture de votre choix, puis définissez la propriété Value de l'objet de ressource à la chaîne localisée. Une autre technique consiste à appeler la méthode SetValueForUICulture , en spécifiant la culture et la valeur localisée.

Exemples

L'exemple suivant est une application console qui imprime des données à partir de l'objet SPUserResource renvoyée par la propriété TitleResource d'un objet SPWeb . L'application imprime tout d'abord le nom de la langue associée à la thread en cours d'exécution et la valeur correspondante de la ressource. Puis comment imprimer le nom de la langue par défaut pour le site Web et sa valeur correspondante de la ressource. Enfin, si l'interface utilisateur multilingue est activé pour le site Web, l'application imprime les noms et valeurs de ressource pour chaque langue autre que le site prend en charge.

using System;
using System.Collections.Generic;
using System.Globalization;
using System.Threading;
using Microsoft.SharePoint;

namespace ConsoleApp
{
    class Program
    {
        static void Main(string[] args)
        {
            using (SPSite site = new SPSite("https://localhost"))
            {
                using (SPWeb web = site.RootWeb)
                {
                    // Get the user resource for the Web site's title.
                    SPUserResource resource = web.TitleResource;

                    string format = "Language: {0} | Value: {1}";

                    // Display the value of the resource in the language of the current thread.
                    Console.WriteLine("Current Thread");
                    Console.WriteLine(format, CultureInfo.CurrentCulture.Name, resource.Value);

                    // Display the value for the default language.
                    CultureInfo uiDefault = web.UICulture;
                    Console.WriteLine("\nWeb Site Default");
                    Console.WriteLine(format, uiDefault.Name, resource.GetValueForUICulture(uiDefault));

                    if (web.IsMultilingual)
                    {
                        // Display the value of the resource for each supported language.
                        Console.WriteLine("\nAlternate Languages");

                        IEnumerable<CultureInfo> cultures = web.SupportedUICultures;
                        foreach (CultureInfo culture in cultures)
                        {
                            if (culture.LCID == uiDefault.LCID)
                                continue;

                            string value = resource.GetValueForUICulture(culture);
                            Console.WriteLine(format, culture.Name, value);
                        }
                    }
                    else
                    {
                        Console.WriteLine("\nMUI is not enabled.");
                    }
                }
            }
            Console.Write("\nPress ENTER to continue....");
            Console.Read();
        }
    }
}
Imports System
Imports System.Collections.Generic
Imports System.Globalization
Imports System.Threading
Imports Microsoft.SharePoint

Module ConsoleApp

    Sub Main()
        Using site As New SPSite("https://localhost")
            Using web As SPWeb = site.OpenWeb()

                ' Get the user resource for the Web site's title.
                Dim resource As SPUserResource = web.TitleResource

                Dim format As String = "Language: {0} | Value: {1}"

                ' Display the value of the resource in the language of the current thread.
                Console.WriteLine("Current Thread")
                Console.WriteLine(format, CultureInfo.CurrentCulture.Name, resource.Value)

                ' Display the value for the default language.
                Dim uiDefault As CultureInfo = web.UICulture
                Console.WriteLine(vbLf & "Web Site Default")
                Console.WriteLine(format, uiDefault.Name, resource.GetValueForUICulture(uiDefault))

                If web.IsMultilingual Then
                    ' Display the value of the resource for each supported language.
                    Console.WriteLine(vbLf & "Alternate Languages")

                    Dim cultures As IEnumerable(Of CultureInfo) = web.SupportedUICultures
                    For Each culture As CultureInfo In cultures
                        If culture.LCID = uiDefault.LCID Then
                            Continue For
                        End If

                        Dim value As String = resource.GetValueForUICulture(culture)
                        Console.WriteLine(format, culture.Name, value)
                    Next
                Else
                    Console.WriteLine(vbLf & "MUI is not enabled.")
                End If

            End Using
        End Using
        Console.Write(vbCrLf & "Press ENTER to continue....")
        Console.Read()
    End Sub
End Module

Cohérence de thread

Tous les membres statique (Partagé dans Visual Basic)s publics de ce type sont thread-safe. Cela n’est pas garanti pour les membres d’instance.

Voir aussi

Référence

SPUserResource - Membres

Microsoft.SharePoint - Espace de noms

DescriptionResource

NameResource

DescriptionResource

TitleResource

SPList.DescriptionResource

SPList.TitleResource

SPList.UserResources

TitleResource

CommandUIExtensionResource

DescriptionResource

TitleResource

SPWeb.DescriptionResource

SPWeb.TitleResource

SPWeb.UserResources

SPWeb.SupportedUICultures

Autres ressources

Multilingual User Interface (MUI)