2009-05-29 3 views
0

Hey, je veux stocker les données de configuration de l'application. Actuellement, j'utilise des INI mais ils sont trop vieux et maintenant je veux essayer quelque chose de nouveau. Je suis sur la plate-forme .NET en utilisant C#.Données de configuration de l'application C#

Quelles solutions ai-je? app.configs?

Le scénario ici est comme ça, je veux laisser d'autres programmes lire les données de configuration.

Répondre

7

Oui, les différents fichiers .config (app.config, web.config, etc.) ont remplacé INI et, dans une certaine mesure, le Registre comme moyen préféré de stocker les données de configuration pour votre application.

Tout programme, .Net ou autre, peut lire ces fichiers. .Net a la classe ConfigurationManager et d'autres langages peuvent simplement faire l'analyse XML pour obtenir les valeurs dont ils ont besoin.

+1

Recherchez également "le dernier gestionnaire de section de configuration personnalisé dont vous aurez besoin". Il fournit un code général pour gérer les données "personnalisées" dans le fichier .config. C'est ce que l'on appelle un "gestionnaire de section de configuration personnalisé" dans le langage .NET, et Craig Andera en a écrit un original, qui est très réutilisable. Un certain nombre de personnes l'ont ensuite étendu. Par exemple, http://weblogs.asp.net/sweinstein/archive/2005/01/10/350299.aspx. Mais cherchez les autres pour voir ce que je veux dire. – Cheeso

1

L'approche standard avec .NET consiste à utiliser les fichiers app.config pour les paramètres d'application et les fichiers user.config pour les paramètres spécifiques à l'utilisateur (l'emplacement varie cependant entre XP et Vista). Rien n'empêche d'autres programmes de lire les données de configuration, il suffit d'avoir un paramètre de configuration dans la deuxième (ou troisième) application qui lui indique où chercher.

1

Le fichier app.config serait le moyen préféré de faire les choses dans .NET. Cela devrait fonctionner correctement pour lire d'autres applications aussi longtemps que vous leur donnez le bon chemin vers le fichier. Et c'est juste un fichier XML, donc vous pouvez le lire à partir d'applications non-NET.

1

Si vous utilisez Visual Studio, vous pouvez utiliser les paramètres d'application à cette fin. Il suffit d'ouvrir le Settings.settings automatiquement ajouté ou en créer un autre. Ils seront automatiquement disponibles en Properties.Settings.Default et sont stockés en XML. Vous pouvez également avoir plusieurs fichiers de paramètres à des fins différentes.

Il s'agit d'un concept Visual Studio plutôt que d'un concept .NET.

0

J'utilise souvent une table SQL pour conserver mes paramètres d'application. Je crée une classe singleton, appelée AppSettings, que je charge avec les données de la table. La classe AppSettings est ensuite utilisée pour obtenir les valeurs de configuration au lieu d'accéder directement aux fichiers de configuration. Pour les applications ASP.Net, j'instancie la classe AppSettings dans l'événement Application_Start de Global.asax.cs. Cela me permet de permettre à l'utilisateur de contrôler certains paramètres de l'application, par exemple. une adresse e-mail pour les notifications Il peut également simplifier les choses en conservant les versions prod, QA et dev de l'application (en supposant que vous ayez des instances de base de données séparées pour chaque)

Questions connexes