This documentation is archived and is not being maintained.

UltimateResourceFallbackLocation Enumeration

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)

public enum class 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 namespace System;
using namespace System::Resources;
using namespace System::Globalization;
using namespace System::Threading;

public ref class Demo
   int FallbackDemo()
      array<String^>^args = Environment::GetCommandLineArgs();

      // If a specific culture is passed in through the command line, use that -- otherwise 
      // just use the current ui culture
      String^ strCulture = L"";
      if ( args->Length == 1 )
         strCulture = args[ 0 ];

      if (  !strCulture->Equals( L"" ) )
            Thread::CurrentThread->CurrentUICulture = gcnew CultureInfo( strCulture );
         catch ( ArgumentException^ e ) 
            Console::WriteLine( e->Message, L"Bad command-line argument" );

            Console::WriteLine( L"Current culture is: {0}", CultureInfo::CurrentUICulture );

      ResourceManager^ rm;

         rm = gcnew ResourceManager( L"MyStrings",Demo::typeid->Assembly );
         NeutralResourcesLanguageAttribute^ attr = gcnew NeutralResourcesLanguageAttribute( L"de",UltimateResourceFallbackLocation::Satellite );

         Console::WriteLine( L"Neutral language = {0}, Fallback location = {1}, Fallback culture = {2}", rm->GetString( L"Language" ), attr->Location, attr->CultureName );
         Console::WriteLine( rm->GetString( L"MSG" ) );
      catch ( MissingSatelliteAssemblyException^ e ) 
         Console::WriteLine( e->Message, L"Unable to locate satellite Assembly" );

      return 1;


void main()
   Demo^ d = gcnew Demo;

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

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