6 votes

Obtenir la chaîne de connexion dans un projet de bibliothèque de classe dans une solution

Dans ma solution .net 4, j'ai deux projets différents - un projet d'application web et un projet de bibliothèque de classes.

Dans le projet d'application web, la chaîne de connexion à la base de données se trouve dans le fichier web.config. J'aimerais accéder à cette chaîne de connexion à partir du projet de bibliothèque de classes. Est-ce possible ? Si oui, comment ?

S'il existe une meilleure approche pour obtenir la chaîne de connexion, merci de me le faire savoir.

6voto

flem Points 12892

Pour y accéder à partir de votre bibliothèque de classes, ajoutez une référence à System.Configuration puis utiliser System.Confinguration.ConfigurationManager.ConnectionStrings .

Il n'est pas idéal de lire ce document à partir de la bibliothèque de la classe. Après tout, pouvez-vous affirmer que votre bibliothèque de classes sera toujours consommée par quelque chose avec un fichier de configuration ? Certainement pas si vous la partagez avec d'autres développeurs, en particulier de plateformes différentes.

Envisager :

  1. IoC - utiliser l'injection de dépendances pour fournir une dépendance contenant les paramètres de configuration. Ceux-ci seront renseignés par la bibliothèque consommatrice (application web).
  2. Transmettre les paramètres à la bibliothèque de classes lors de la consommation d'éléments qui en dépendent.

par exemple :

public class MyLibraryContainer
{
    private string _connectionString;

    public MyLibraryContainer(string connectionString)
    {
        _connectionString = connectionString;
    }
}

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X