2010-11-25 7 views
1

Je suis en train de créer une application qui accède à diverses bases de données. Actuellement, les chaînes de connexion sont stockées dans le fichier App.Config. Cependant, j'aimerais pouvoir configurer plus facilement les chaînes de connexion de la base de données.Fournisseur de chaînes de connexion de base de données centralisé

Je considère avoir une seule base de données "maître" qui contient les chaînes de connexion pour toutes les autres bases de données. Cela signifierait que chaque application nécessitant une connexion à une base de données recherche la connexion à partir de la base de données principale.

Le fichier App.config peut stocker le nom de la table pour les chaînes de connexion à la base de données. Cela permettrait à plusieurs instances de l'application d'utiliser la même base de données "maître" avec une table différente pour rechercher les chaînes de connexion.

Quels sont les avantages/inconvénients de cette approche?

Est-ce que quelqu'un a fait quelque chose de similaire?

Est-ce considéré comme une bonne pratique?

Répondre

0

Je ne connais pas les meilleures pratiques, mais c'est un modèle très courant.

Vous voyez souvent le motif d'une vue arborescente sur le côté gauche d'une application où vous créez des "connexions", vous développez ensuite ces widgets de connexion pour afficher les vues/tables/procs stockés etc. Et bien sûr, ces connexions sont enregistrées avec leurs chaînes de connexion. (soit à une base de données ou à un fichier de configuration local)

Certains exemples sont l'outil de gestion MS SQL Server, Quest's Toad Suite de produits, etc. C'est très commun en effet.

+0

Les chaînes de connexion ne sont pas à configurer par les utilisateurs. C'est un projet d'orchestration ETL qui s'exécute en tant qu'application console. –

1

Si vous cherchez un service de configuration centralisée, alors ne cherchez pas plus loin que l'exemple d'application StockTrader.Net qui comprend un service de configuration complet avec la source.

+0

Merci, je vais y jeter un coup d'oeil. –

Questions connexes