Resourcemanager, c'est de revenir à une même ressource, bien que CultureInfo est spécifié

Une chose très simple, et je ne peux pas le faire fonctionner. Je tiens à mondialiser ma dll donc je suis en utilisant les fichiers de ressources de + la classe ResourceManager.

J'appelle la classe resourcemanager comme ceci:

var p = new ResourceManager("Appname.Default", Assembly.GetExecutingAssembly());

Obtenir les cordes, comme ce

System.Diagnostics.Debug.WriteLine(p.GetString("greeting"));
System.Diagnostics.Debug.WriteLine(p.GetString("greeting", new CultureInfo("nl")));
System.Diagnostics.Debug.WriteLine(p.GetString("greeting", new CultureInfo("nl-NL")));
System.Diagnostics.Debug.WriteLine(p.GetString("greeting", new CultureInfo("en")));

Et il retourne 4 fois sur la même chaîne. Mes fichiers sont appelés

Default.resx 
Default.en.resx 
Default.nl.resx 
Default.nl-NL.resx

Tous les paramètres de fichier sont les mêmes, mais comme mentionné auparavant, seule la ressource dans le fichier par Défaut est utilisé.

Que suis-je surplombant ici?

Sont la .fichier resx réellement obtenir compilé dans des assemblys satellites? Regardez dans le dossier bin\Debug et de regarder pour les sous-répertoires avec des noms fr, nl et nl-NL.
Essayez d'obtenir des traductions via Default.ResourceManager.GetString. Le plus probable de la ressource manager, vous êtes en train de créer ait un peu de mal paramètre(s).

OriginalL'auteur Jochen van Wylick | 2012-06-30