Partager via


Comment : lire les chaînes de connexion dans le fichier Web.config

Mise à jour : novembre 2007

Cet exemple lit une chaîne de connexion dans un fichier Web.config. L'élément connectionStrings est une collection ConnectionStringSettingsCollection d'objets ConnectionStringSettings. L'utilisation des éléments de collection peut être un peu plus complexe que la manipulation d'autres éléments de configuration.

Pour mettre à jour un paramètre de configuration, utilisez la méthode Save ou SaveAs de l'objet de configuration. Pour plus d'informations, consultez Utilisation des classes de configuration. Pour obtenir des exemples de code supplémentaires, consultez la classe ConnectionStringsSection et les classes connexes.

Pour obtenir des données de configuration, cet exemple utilise la méthode non statique, qui vous permet d'extraire des informations de configuration de n'importe quelle application. Si vous souhaitez obtenir des informations de configuration de l'application dans laquelle votre code réside, utilisez la méthode statique pour bénéficier d'un traitement plus rapide. Pour plus d'informations, consultez la section « Manipulation des paramètres de configuration locaux et distants » dans Vue d'ensemble de l'API de configuration ASP.NET.

Remarque :

Cet exemple s'applique à un site Web nommé MyWebSiteRoot. Pour exécuter l'exemple, vous devez l'exécuter dans un site Web sous ce nom ou remplacer la chaîne fournie à la méthode OpenWebConfiguration par le nom de votre site Web.

Exemple

Dim rootWebConfig As System.Configuration.Configuration
    rootWebConfig = System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("/MyWebSiteRoot")
Dim connString As System.Configuration.ConnectionStringSettings
If (0 < rootWebConfig.ConnectionStrings.ConnectionStrings.Count) Then
    connString = rootWebConfig.ConnectionStrings.ConnectionStrings("NorthwindConnectionString")
    If Not (Nothing = connString.ConnectionString) Then
        Console.WriteLine("Northwind connection string = {0}", connString.ConnectionString)
    Else
        Console.WriteLine("No Northwind connection string")
    End If
End If
         System.Configuration.Configuration rootWebConfig =
                System.Web.Configuration.WebConfigurationManager.OpenWebConfiguration("/MyWebSiteRoot");
            System.Configuration.ConnectionStringSettings connString;
            if (0 < rootWebConfig.ConnectionStrings.ConnectionStrings.Count)
            {
                connString =
                    rootWebConfig.ConnectionStrings.ConnectionStrings["NorthwindConnectionString"];
                if (null != connString)
                    Console.WriteLine("Northwind connection string = \"{0}\"",
                        connString.ConnectionString);
                else
                    Console.WriteLine("No Northwind connection string");
            }

Compilation du code

Cet exemple nécessite les éléments suivants :

  • Élément connectionStrings dans le fichier Web.config racine qui contient une connexion nommée NorthwindConnectionString. L'élément peut se présenter de la manière suivante :

    <connectionStrings>
      <add 
        name="NorthwindConnectionString" 
        connectionString="Data Source=serverName;Initial 
        Catalog=Northwind;Persist Security Info=True;User 
        ID=userName;Password=password"
        providerName="System.Data.SqlClient"
      />
    </connectionStrings>
    

    L'élément connectionStrings est un enfant direct de l'élément <configuration> et un homologue de l'élément system.web.

    Note de sécurité :

    Lorsque vous stockez des informations sensibles telles que les noms d'utilisateurs et mots de passe dans un fichier de configuration, vous devez chiffrer les valeurs sensibles à l'aide de la configuration protégée. Pour plus d'informations, consultez Comment : sécuriser des chaînes de connexion lors de l'utilisation de contrôles de source de données.

Programmation fiable

Si la chaîne de connexion spécifiée n'existe pas dans le fichier Web.config, aucun objet n'est retourné. Lors de la lecture des chaînes de connexion, vérifiez que le code a retourné un objet.

Sécurité

Le fichier de configuration doit être protégé sur le serveur à l'aide des paramètres de sécurité Windows afin de limiter son accès en lecture. Il est possible de chiffrer l'élément connectionString pour le protéger. Pour plus d'informations, consultez Chiffrement des informations de configuration à l'aide de la configuration protégée.

Voir aussi

Référence

connectionStrings, élément (Schéma des paramètres ASP.NET)

ConfigurationSettings