0

Je souhaite créer un fichier de ressources par programmation. J'ai réussi à le faire suivant ce lien: https://msdn.microsoft.com/en-us/library/gg418542(v=vs.110).aspxComment créer un fichier de ressources par programme dans le bon dossier C#

Et je suis arrivé ce code:

ResXResourceWriter resx = new ResXResourceWriter(@".\Resources\resources.en.resx"); 
     resx.Close(); 

Il travaille, mais il veut créer le fichier dans le dossier « Ressources » dans « C: \ Program Files (x86) \ IIS Express ". Mais je veux qu'il crée le fichier dans le dossier "Ressources" dédié dans mon projet asp.net, comment pointer sur cette carte relativement?

Répondre

0

Si vous voulez écrire à un endroit précis, je dirais quelque chose comme ça

string resFilePath = ConfigurationManager.AppSettings["ResourceFilePath"]; 
ResXResourceWriter resx = new ResXResourceWriter(Path.Combine(resFilePath, "\Resources\resources.en.resx")); 
resx.Close(); 

L'insertion du chemin de base dans la configuration vous permet de le modifier lorsque vous déployez votre application. Rappelez-vous que le code s'exécute dans le contexte de l'application en cours d'exécution, donc quel que soit le compte qu'il exécute, il nécessitera un accès en écriture à votre répertoire de ressources.

0
  1. Créez d'abord le fichier de ressources à l'emplacement de votre choix.
  2. Ajouter le fichier au projet.
  3. Selon l'endroit où existe le fichier/dossier, VS fera soit une référence relative ou absolue à elle
+0

Mais je veux laisser les utilisateurs ajouter autant de langues qu'ils veulent sur le site, c'est pourquoi je veux ajouter les fichiers de ressources de manière dynamique. Je ne peux pas créer les fichiers de ressources d'abord, je pourrais avoir besoin de 1, je pourrais avoir besoin5 –

+0

Ceci ne fournit pas une réponse à la question. Ça devrait être un commentaire. – mmushtaq