2010-12-06 25 views
0

Je travaille sur un projet ASP.Net qui contient toutes ses traductions dans un fichier Translations.resx. Existe-t-il un moyen facile d'obtenir une chaîne traduite de manière non typée?Obtention non-typée d'une chaîne à partir d'un fichier de ressources

Je ne veux pas faire

Translations.TranslateThisKey 

mais plutôt quelque chose comme

Translations["TranslateThisKey"] 

J'ai besoin parce que la clé est un code provenant d'une ressource externe.

Répondre

2

essayer

var Translations = new ResourceManager("MyResources", 
    Assembly.GetExecutingAssembly()) 
     .GetResourceSet(CultureInfo.CurrentCulture, false, true) 
     .Cast<DictionaryEntry>() 
     .Where(e => e.Value is string) 
     .ToDictionary(e => e.Key, e => (string) e.Value); 

var result = Translations["TranslateThisKey"]; 
1
Resources.ResourceManager.GetString("NAME_OF_YOUR_STRING_IN_RESX_FILE")