Vous êtes ici Forums
  |  Connexion
 Forums
HomeHomeForums DNNForums DNNDéveloppementDéveloppementlecture de ressources dans un fichier resxlecture de ressources dans un fichier resx
Précédente
 
Suivante
Nouveau message
01/07/2008 10:56
 

Bonjour à tous.

comme indiqué dans le titre, j'ai quelques petits soucis pour lire des ressources dans un fichier resx.
j'ai cherché longuement et fait plusieurs tentatives différentes trouvées sur le net, sans résultat.
je vais vous expliquer la situation en essayant d'être le plus complet possible.

- j'ai généré de façon automatique la ressource locale de mon fichier EditForm.ascx, à savoir EditForm.ascx.resx
- dans mon code-behind, j'ajoute des strings dans une dropdownlist pour choisir un composant.
  par exemple : choix_controls.items.add("Bouton");
  mon but est ici de remplacé la string entrée en code-behind par la valeur de mon fichier resx.
- dans mon fichier .resx, j'ai ajouté manuellement la paire clé/valeur  "button"/"Bouton"

c'est maintenant que les choses se compliquent : j'ai tenté plusieurs méthodes pour lire les données dans mon fichier de ressources, aucune n'a fonctionné. voici mes essais :

ResourceManager resx = new ResourceManager("EditForm.ascx", typeof(DesktopModules_monmodule_EditForm).Assembly);
choix_controls.Items.Add(resx.GetString("button"));

string chemin = Server.MapPath(@"~\DesktopModules\EditForm\App_LocalResources");
ResourceManager resx = ResourceManager.CreateFileBasedResourceManager("EditForm.ascx", chemin, null);
choix_controls.Items.Add(resx.GetString("button"));

j'ai essayé d'autres méthodes plus longues, sans résultats également (je ne vais pas toutes les poster, sinon j'en ai pour la journée à rédiger ce post lol )
après avoir tourné et retourné le problème dans tous les sens, je ne vois pas où se situe mon erreur.

merci d'avance pour vos réponses ;)

 
Nouveau message
01/07/2008 18:16
Réponse Acceptée 

En DNN pour gérer la traduction on fait :

Dim strHost As String = Localization.GetString("HostRoot", Me.LocalResourceFile)

Ceci va automatiquement rechercher dans le fichier :
~\DesktopModules\EditForm\App_LocalResources\EditForm.ascx.resx
la traduction


Sacha
 
Nouveau message
02/07/2008 09:20
 

merci, ca marche beaucoup mieux à présent

en fait mon erreur se situait à deux endroits : dans le code et dans le fichier resx.

dans mon fichier resx, je devais mettre la clé "button.Text" et non pas "button" tout court.

ensuite il suffisait d'appeler "button" mais sans la partie ".Text"
string chaine = Localization.GetString("button", this.LocalResourceFile);

c'était tout bête (comme souvent) mais encore fallait-il le trouver.

merci du coup de main.

 
Précédente
 
Suivante
HomeHomeForums DNNForums DNNDéveloppementDéveloppementlecture de ressources dans un fichier resxlecture de ressources dans un fichier resx