2012-04-19 1 views
1

Je déplace du code d'une application vers un projet de classe auxiliaire. Cette application utilise des fichiers de ressources qui contiennent des textes et leurs traductions.Accéder à la ressource au sein de l'assembly appelant

Existe-t-il un moyen d'accéder aux fichiers de ressources à partir de l'application dans ce nouveau projet d'assistance? Ce serait très utile, car je n'ai pas besoin de déplacer la moitié de ces fichiers de ressources vers ce nouveau projet.

Assemblée A (contient le fichier de ressources) -> Appels méthode sur l'Assemblée B et cette méthode a besoin d'un texte de ressources de l'Assemblée A.

+0

Y a-t-il une raison pour laquelle A ne peut pas simplement passer la ressource à B dans l'appel de fonction? –

Répondre

0

Vous pouvez utiliser Assembly.GetEntryAssembly() GetFile() méthode dans. dll pour obtenir le fichier de l'assembly d'application et utiliser la classe ResourceManager pour le charger. Ou utilisez éventuellement Assembly.GetEntryAssembly(). GetExportedTypes() pour obtenir une classe de ressources fortement typée. Cependant, vous devriez considérer si le référencement des ressources dans l'application à partir de la bibliothèque est la bonne approche. Je suggérerais soit de déplacer toutes les ressources vers l'assemblage de la bibliothèque et de les référencer depuis l'application, soit (probablement le meilleur) - créer un assemblage séparé uniquement pour les ressources et l'utiliser à la fois depuis l'application et la DLL.

Questions connexes