Gewusst wie: Lesen von Verbindungszeichenfolgen aus der Datei Web.config
Aktualisiert: November 2007
In diesem Beispiel wird eine Verbindungszeichenfolge aus der Datei Web.config gelesen. Das connectionStrings-Element ist eine ConnectionStringSettingsCollection-Auflistung von ConnectionStringSettings-Objekten. Das Arbeiten mit Auflistungselementen ist möglicherweise etwas komplizierter als das Arbeiten mit anderen Konfigurationselementen.
Verwenden Sie zum Aktualisieren einer Konfigurationseinstellung die Save-Methode oder die SaveAs-Methode des Konfigurationsobjekts. Weitere Informationen finden Sie unter Verwenden der Konfigurationsklassen. Weitere Codebeispiele finden Sie im Abschnitt zur ConnectionStringsSection-Klasse und zugehörigen Klassen.
In diesem Beispiel wird die nicht statische Methode zum Abrufen von Konfigurationsdaten verwendet, mit der Sie Konfigurationsinformationen aus jeder beliebigen Anwendung abrufen können. Verwenden Sie zum Abrufen von Konfigurationsdaten aus der Anwendung, in der sich Ihr Code befindet, die statische Methode, da diese schneller verarbeitet wird. Weitere Informationen finden Sie im Abschnitt Arbeiten mit lokalen und Remotekonfigurationseinstellungen in der Übersicht über die ASP.NET-Konfigurations-API.
Hinweis: |
---|
Dieses Beispiel bezieht sich auf eine Website namens MyWebSiteRoot. Zum Ausführen des Beispiels müssen Sie entweder eine Website mit diesem Namen verwenden oder die für die OpenWebConfiguration-Methode bereitgestellte Zeichenfolge durch den Namen der verwendeten Website ersetzen. |
Beispiel
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");
}
Kompilieren des Codes
Dieses Beispiel setzt Folgendes voraus:
Ein connectionStrings-Element in der Stammdatei Web.config, das eine Verbindung mit dem Namen NorthwindConnectionString enthält. Das Element könnte folgendermaßen aussehen:
<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>
Das connectionStrings-Element ist ein unmittelbares Unterelement des <configuration>-Elements und ein Peer des system.web-Elements.
Sicherheitshinweis: Wenn vertrauliche Informationen, z. B. Benutzernamen und Kennwörter, in einer Konfigurationsdatei gespeichert werden, müssen Sie die vertraulichen Werte mithilfe der geschützten Konfiguration verschlüsseln. Weitere Informationen finden Sie unter Gewusst wie: Sichern von Verbindungszeichenfolgen bei der Verwendung von Datenquellensteuerelementen.
Robuste Programmierung
Wenn die angegebene Verbindungszeichenfolge nicht in der Datei Web.config vorhanden ist, wird kein Objekt zurückgegeben. Prüfen Sie beim Lesen von Verbindungszeichenfolgen, ob der Code ein Objekt zurückgegeben hat.
Sicherheit
Die Konfigurationsdatei sollte auf dem Server mithilfe von Windows-Sicherheitseinstellungen geschützt werden, um den Lesezugriff auf die Datei zu beschränken. Sie können das connectionString-Element verschlüsseln, um es zu schützen. Ausführliche Informationen finden Sie unter Verschlüsseln von Konfigurationsinformationen mithilfe der geschützten Konfiguration.