SPUserResource-Klasse
Stellt eine benutzerdefinierte lokalisierbare Ressource.
Vererbungshierarchie
System.Object
Microsoft.SharePoint.SPUserResource
Namespace: Microsoft.SharePoint
Assembly: Microsoft.SharePoint (in Microsoft.SharePoint.dll)
Syntax
'Declaration
Public NotInheritable Class SPUserResource
'Usage
Dim instance As SPUserResource
public sealed class SPUserResource
Hinweise
User-Ressource ist eine Zeichenfolge, die Text enthält, die von dem multilingual User Interface (MUI) verwendet wird. Beispielsweise könnte eine Ressource die Beschreibung einer Website darstellen. In diesem Fall würde ein einzelnes SPUserResource -Objekt, die die Ausgabe verwendet für jede der von der Website unterstützten Kulturen Text enthalten.
Wenn eine neue Ressource erstellt wird, wird der Text für alle Kulturen in der Standardsprache der Website. Anschließend kann jemanden übersetzen den Text für eine bestimmte Kultur und die Übersetzung hinzufügen, mit denen Sie die Ressource der unübersetzten Text ersetzt. Eine Möglichkeit hierzu besteht darin legen Sie die Thread.CurrentUICulture -Eigenschaft des aktuell ausgeführten Threads in die gewünschte Sprache aus, und legen Sie das Resource-Objekt Value -Eigenschaft die lokalisierte Zeichenfolge fest. Ein anderes Verfahren ist die SetValueForUICulture -Methode gibt die Kultur und den lokalisierten Wert aufrufen.
Beispiele
Das folgende Beispiel ist eine Konsolenanwendung, die Daten aus dem SPUserResource -Objekt zurückgegeben, die von der TitleResource -Eigenschaft eines Objekts SPWeb wird gedruckt. Die Anwendung wird zuerst der Name der Sprache der ausgeführten Thread und den entsprechenden Ressourcenwert zugeordnet. Klicken Sie dann, wird der Name der Standardsprache für die Website und den entsprechenden Ressourcenwert. Abschließend gibt die Anwendung MUI für die Website aktiviert ist, den Namen und Ressourcenwerten für jede alternative Sprache an, die die Website unterstützt.
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
Threadsicherheit
Alle öffentlichen static (Shared in Visual Basic) Member dieses Typs sind threadsicher. Die Threadsicherheit von Instanzmembern ist nicht gewährleistet.
Siehe auch
Referenz
Microsoft.SharePoint-Namespace