2017-01-30 7 views
2

Je voudrais utiliser des fichiers de ressources pour obtenir du texte. Ces fichiers de ressources seront dans dll.Il n'y a rien à faire avec la localisation juste au cas où vous demandez. Je veux avoir la possibilité de choisir quel rexfile utiliser en fonction d'un configsettings.Comment lire le fichier de ressources de dll C#

Exemple MyCompany.RexFiles.dll

  1. RexFileA
  2. RexFileB
  3. RexFileC

Ma question Étant donné que dans un fichier de configuration que j'ai les paramètres qui décident qui rexfile à utilisez par exemple CurrentRexfile = "RexFileB"

Comment puis-je par défaut à droite rexFile en fonction de la configSettings.

Toutes les suggestions

+0

Peut-être une réflexion avancée? –

Répondre

0

Vous pouvez utiliser la classe ResourceManager pour récupérer les ressources:

System.Reflection.Assembly myAssembly = this.GetType().Assembly; 

string rexFile = ConfigurationManager.AppSettings["CuurentRexfile"]; 
System.Reflection.Assembly otherAssembly = System.Reflection.Assembly.Load(rexFile); 

System.Resources.ResourceManager resManager = new System.Resources.ResourceManager("ResourceNamespace.myResources", otherAssembly); 

string test = resManager.GetString("resourceString"); 

les plus lus here

+0

merci pour votre réponse.Would cela fonctionne en utilisant des attributs, je veux dire en appelant "resManager.GetString (" resourceString ") dans un attribut.Je souhaite qu'il pourrait être enveloppé pour obtenir appelé comme resources.MyName-resources.MySurname etc ... – developer9969

+0

désolé, maintenant je suis confus, je ne sais pas quel attribut vous voulez dire – jomsk1e

+0

désolé mon erreur tout bon – developer9969