Impossible de déployer une assembly satellite

Amethyste16 Messages postés 5 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 7 novembre 2008 - 31 juil. 2008 à 21:32
Amethyste16 Messages postés 5 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 7 novembre 2008 - 3 août 2008 à 14:51
bonjour

j'ai créé et déployé (hors GAC) une assembly satellite comme indiquée ici:
http://www.ddj.com/windows/184416844

je l'ai déployé sur un site web existant, mais pas moyen de lui faire comprendre qu'il doit la charger dynamiquement comme le dit la doc.

quelqu'un sait t'il ce que je pourrai investiguer de plus?

j'ai vérifié avec reflector qu'elle contenait les resources attendus
j'ai relancé le site web et vidé les caches
j'ai vérifié que le thread avait bien la culture attendue
j'ai vérifié le numéro de version

que puis je faire de plus?

merci

2 réponses

jesusonline Messages postés 6814 Date d'inscription dimanche 15 décembre 2002 Statut Membre Dernière intervention 13 octobre 2010 29
1 août 2008 à 12:41
Bonjour,

les assembly satellite servent principalement pour la localisation, tu dois donc avoir un fichier myAssembly.fr-fr.dll, ce fichier est à déposer dans le /bin de l'application est ASP.net va charger automatiquement l'assembly.

Je ne comprends pas pourquoi tu dis qu'il n'arrive pas à charger l'assembly, tu as fait un dump mémoire, comment sais tu si ASP.net a correctement chargé l'assembly ? Bref, quels constatations te permet d'indiquer que l'assembly n'est pas chargé ? Je ne suis pas sur que ce soit là le véritable problème, détails nous un peu plus les symptomes et on verra ce qu'on peut faire :-)

<hr />Cyril - MVP ASP.net - MCPD ASP.net & MCTS SQL - Consultant indépendant
0
Amethyste16 Messages postés 5 Date d'inscription dimanche 6 avril 2008 Statut Membre Dernière intervention 7 novembre 2008
3 août 2008 à 14:51
merci de ton aide

il est inutile de faire un dump mémoire, la fonction ResourceManager.GetResourceSet() suffit à cela.
Le fichier de resources ne se charge pas ou en tout cas il reste (trop) discret!

j'ai tenté je pense à peu près toutes les combinaisons possibles de nom pour le fichier de resources. mais il est peut être pas sans intérêt d'expliquer comment je le construit:

------------------------------------

Mes fichiers sont utilisés dans une librairie appelée: Res.Commerce.Web.Endeca.dll
le fichier de resource de culture par défaut contenu dans la librairie est: EditableResources.resx
 
je lance d'abord:
 
resgen EditableResources.resx Res.Commerce.Web.Endeca.resources
 
puis:
 
al /t:lib /embed:Res.Commerce.Web.Endeca.resources /culture:nl /out:Res.Commerce.Web.Endeca.resources.dll
 

j'obtiens donc:
 
Res.Commerce.Web.Endeca.resources.dll
 
je me rends ensuite sur mon site web et je vais dans son répertoire bin
je créé un sous répertoire nl, j'ai donc ce schéma: bin/nl
 
dans nl je place Res.Commerce.Web.Endeca.resources.dll
 
ensuite côté code je dispose de la classe EditableResources due au fichier de resources par défaut, je la laisse faire son boulot... qu'elle ne fait pas!
j'interroge directe les propriétés qu'elle créé pour chaque entrée dans le Resx, par exemple EditableResources.Commun_TrouverArticle

J'ai tenté un chargement manuel du fichier de resources, cela ne marche pas mieux.
j'ai aussi tenté des tas de combinaisons possibles pour le nom de l'assemblage satellite, aucun ne fonctionne mieux 

je sens que je vais finir par directement lire le resx et ça va régler la question
0
Rejoignez-nous