Si vous n'êtes pas à l'aide de ConfigurationManager
pour gérer votre application et les paramètres d'utilisateur, vous devriez être. La configuration de la boîte à outils de la .NET Framework est remarquablement bien pensé, et les outils de Visual Studio qui interagissent avec elle sont trop.
Le comportement par défaut de ConfigurationManager
met invariant (application) et modifiables par l'utilisateur (utilisateur) réglages dans les bons endroits: les paramètres de l'application aller dans le dossier de l'application et des paramètres de l'utilisateur d'aller en System.Environment.SpecialFolder.LocalApplicationData
. Il fonctionne sous toutes les versions de Windows qui prennent en charge .NET.
Comme pour les fichiers journaux, System.Environment.SpecialFolder.LocalApplicationData
est généralement l'endroit où vous souhaitez les mettre, parce que c'est la garantie d'être accessible en écriture aux utilisateurs.
Il y a certainement des cas où vous n'auriez pas, par exemple, si vous souhaitez graver des fichiers sur un partage réseau, de sorte que vous pouvez facilement y accéder à distance. Il y a un assez large éventail de moyens à mettre en œuvre, mais la plupart d'entre eux commencent avec la création d'un paramètre d'application qui contient le chemin vers le dossier partagé. Tous impliquent l'administration.
J'ai un couple de plaintes à propos de ConfigurationManager
et VS outils: il doit y avoir mieux à haut de niveau de la documentation qu'il est, et d'une meilleure documentation de la VS-générés Settings
classe. Le mécanisme par lequel l' app.config
le fichier tourne dans le fichier de configuration d'application dans la cible répertoire de compilation est opaque (et la source de l'une des questions les plus fréquemment posées de tous: "ce qui est arrivé à ma chaîne de connexion?"). Et si il y a moyen de créer des paramètres qui n'ont pas de valeurs par défaut, je n'ai pas trouvé.