Export (0) Print
Expand All

UltimateResourceFallbackLocation Enumeration

Note: This enumeration is new in the .NET Framework version 2.0.

Specifies the assembly for the ResourceManager class to use to retrieve neutral resources by using the Packaging and Deploying Resources.

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

[SerializableAttribute] 
[ComVisibleAttribute(true)] 
public enum UltimateResourceFallbackLocation
/** @attribute SerializableAttribute() */ 
/** @attribute ComVisibleAttribute(true) */ 
public enum UltimateResourceFallbackLocation
SerializableAttribute 
ComVisibleAttribute(true) 
public enum UltimateResourceFallbackLocation

 Member nameDescription
MainAssemblyFallback resources are located in the main assembly. 
SatelliteFallback resources are located in a satellite assembly in the location specified by the Location property. 

Use the UltimateResourceFallbackLocation enumeration with the NeutralResourcesLanguageAttribute constructor to specify whether the ResourceManager class is to retrieve neutral fallback resources from the main application assembly (the default), or from a satellite assembly.

The following code example displays the neutral language, fallback location, and fallback culture for a resource manager that is created for the current user interface culture or a culture specified on the command line.

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

[assembly: NeutralResourcesLanguageAttribute("de" , UltimateResourceFallbackLocation.Satellite)]

public class Demo
{
        public static void Main(string[] args) {
			
			// If a specific culture is passed in through the command line, use that -- otherwise
			// just use the current ui culture
		
			String strCulture = "";
			if (args.Length == 1) 
			{
				strCulture = args[0];
			}
		if (strCulture != "") 
		{
			try {
				Thread.CurrentThread.CurrentUICulture = new CultureInfo(strCulture);
			}
			catch (ArgumentException e){
				Console.WriteLine(e.Message, "Bad command-line argument");
			}
		}
		else
			Console.WriteLine("Current culture is: {0}", CultureInfo.CurrentUICulture.ToString());

		ResourceManager rm;

		try
		{
			rm = new ResourceManager("MyStrings", typeof(Demo).Assembly);
			NeutralResourcesLanguageAttribute attr = new NeutralResourcesLanguageAttribute("de", UltimateResourceFallbackLocation.Satellite);
			Console.WriteLine("Neutral language = " + rm.GetString("Language") + ", Fallback location = " + attr.Location.ToString() + ", Fallback culture = " + attr.CultureName.ToString());
			Console.WriteLine(rm.GetString("MSG"));

		}
		catch (MissingSatelliteAssemblyException e){
			Console.WriteLine(e.Message, "Unable to locate satellite Assembly");
		}



        }

}

import System.*;
import System.Resources.*;
import System.Globalization.*;
import System.Threading.*;

/** @assembly NeutralResourcesLanguageAttribute("de",
    UltimateResourceFallbackLocation.Satellite)
 */
public class Demo
{
    public static void main(String[] args)
    {
        // If a specific culture is passed in through the command line, use
        // that -- otherwise just use the current ui culture
        String strCulture = "";
        if (args.get_Length() == 1) {
            strCulture = args[0];
        }
        if (!(strCulture.Equals(""))) {
            try {
                System.Threading.Thread.get_CurrentThread().
                    set_CurrentUICulture(new CultureInfo(strCulture));
            }
            catch (ArgumentException e) {
                Console.WriteLine(e.get_Message(), "Bad command-line argument");
            }
        }
        else {
            Console.WriteLine("Current culture is: {0}",
                CultureInfo.get_CurrentUICulture().ToString());
        }
        ResourceManager rm;
        try {
            rm = new ResourceManager("MyStrings",
                Demo.class.ToType().get_Assembly());
            NeutralResourcesLanguageAttribute attr = 
                new NeutralResourcesLanguageAttribute("de",
                UltimateResourceFallbackLocation.Satellite);
            Console.WriteLine("Neutral language = " 
                + rm.GetString("Language") + ", Fallback location = " 
                + attr.get_Location().ToString() + ", Fallback culture = " 
                + attr.get_CultureName().ToString());
            Console.WriteLine(rm.GetString("MSG"));
        }
        catch (MissingSatelliteAssemblyException e) {
            Console.WriteLine(e.get_Message(),
                "Unable to locate satellite Assembly");
        }
    } //main
} //Demo

Windows 98, Windows 2000 SP4, Windows Millennium Edition, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

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

.NET Framework

Supported in: 2.0

Community Additions

ADD
Show:
© 2014 Microsoft