Export (0) Print
Expand All

ResourceManager.GetString Method (String, CultureInfo)

Updated: May 2012

Gets the value of the String resource localized for the specified culture.

Namespace:  System.Resources
Assembly:  mscorlib (in mscorlib.dll)

public virtual string GetString(
	string name,
	CultureInfo culture
)

Parameters

name
Type: System.String

The name of the resource to get.

culture
Type: System.Globalization.CultureInfo

The CultureInfo object that represents the culture for which the resource is localized. Note that if the resource is not localized for this culture, the lookup will fall back using the current thread's Parent property, stopping after looking in the neutral culture.

If this value is null, the CultureInfo is obtained using the current thread's CurrentUICulture property.

Return Value

Type: System.String
The value of the resource localized for the specified culture. If a best match is not possible, null is returned.

ExceptionCondition
ArgumentNullException

The name parameter is null.

InvalidOperationException

The value of the specified resource is not a String.

MissingManifestResourceException

No usable set of resources has been found, and there are no neutral culture resources.

MissingSatelliteAssemblyException

The default culture's resources reside in a satellite assembly that could not be found.

If the resource has not been localized for that culture, the resource that is returned is localized for a best match (this is accomplished using the current thread's Parent property). Otherwise, null is returned.

If no usable set of resources has been found, the ResourceManager falls back on the neutral culture's resources, which are expected to be in the main assembly. If an appropriate culture resource has not been found, a MissingManifestResourceException is thrown.

For more information about how resources are found, see "Resource Fallback Process" in Packaging and Deploying ResourcesPackaging and Deploying Resources.

NoteNote:

The GetString method is thread-safe.

Caution noteCaution:

This method can throw more exceptions than are listed. One reason this might occur is if a method that this method calls throws an exception. For example, a FileLoadException might be thrown if an error was made deploying or installing a satellite assembly, or a SerializationException might be thrown if a user-defined type throws a user-defined exception when the type is deserialized.

The following code example gets a string resource using the specified culture.

using System;
using System.Globalization;
using System.Threading;
using System.Resources;
using System.Reflection;

class ResourcesExample 
{
    public static void Main() 
    {
       // Create a resource manager to retrieve resources.
       ResourceManager rm = new ResourceManager("items", 
          Assembly.GetExecutingAssembly());

       // Get the culture of the currently executing thread. 
       // The value of ci will determine the culture of 
       // the resources that the resource manager retrieves.
       CultureInfo ci = Thread.CurrentThread.CurrentCulture;

       // Retrieve the value of the string resource named  
       // "welcome", localized for the culture specified by ci.
       String str = rm.GetString("welcome", ci);
       Console.WriteLine(str);
    }
}

Windows 7, Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2008 R2, Windows Server 2008, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98, Windows CE, Windows Mobile for Smartphone, Windows Mobile for Pocket PC, Xbox 360, Zune

The .NET Framework and .NET Compact Framework do not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.

.NET Framework

Supported in: 3.5, 3.0, 2.0, 1.1, 1.0

.NET Compact Framework

Supported in: 3.5, 2.0, 1.0

XNA Framework

Supported in: 3.0, 2.0, 1.0

Date

History

Reason

May 2012

Added MissingSatelliteAssemblyException exception.

Content bug fix.

Community Additions

ADD
Show:
© 2014 Microsoft