Ceci est mon app.config:Y a-t-il une différence entre le chargement d'une valeur depuis le fichier app.config et son chargement depuis un objet?
<appSettings>
<add key="PreRootFolder" value="D:\" />
<add key="RootFolder" value="webSite" />
<add key="Folder" value="folder_a" />
</appSettings>
Depuis que je préfère construire le chemin dans l'application plutôt que d'avoir plusieurs clés pour chaque partie du chemin ... (difficile à maintenir) donc je construire le chemin de cette façon:
string prePath = ConfigurationManager.AppSettings["PreRootFolder"];
string rootFolder = ConfigurationManager.AppSettings["RootFolder"];
string folder= ConfigurationManager.AppSettings["Folder"];
// global param (actually accessed by ((MainFormName)mainParent)).g_fullOriginalRoot
string g_fullOriginalRoot = prePath + "\\" + rootFolder + "\\" + fodler;
Je le fais dans l'application MDI formulaire parent (il ne mourra jamais)
Je l'ai fait parce que je trouve que j'appelle les clés plusieurs fois et maintenant je peux obtenir les données du parent.
Je me demande si ma solution est correcte?
Les paramètres app.config sont-ils chargés en tant que globaux?
Je travaille avec des fichiers et les clés que j'ai sont la partie des chemins: key1 = "C: \ source", key2 = "D: \ target" key3 = "voie relative" ... les mêmes clés pour toutes les formes, qui sont très susceptibles d'être utilisées, valent le risque d'être initiées (et potentiellement de ne pas être utilisées) et cela semble également être un travail redondant pour le faire dans toutes les classes. Est-ce que ma logique a un sens? – Asaf
Oui. Thouch "C: \ source" n'a rien à voir avec une fenêtre, donc je l'ai mis dans une classe non-formulaire. Il peut également être mémorisé, où l'obtention d'une propriété donnée charge cette information lors de la première utilisation. –