Procedura: leggere stringhe di connessione dal file Web.config
Aggiornamento: novembre 2007
In questo esempio viene letta una stringa di connessione da un file Web.config. L'elemento connectionStrings è un insieme ConnectionStringSettingsCollection di oggetti ConnectionStringSettings. L'utilizzo di elementi di insieme può essere leggermente più complesso rispetto a quello di altri elementi di configurazione.
Per aggiornare un'impostazione di configurazione, utilizzare il metodo Save o SaveAs dell'oggetto di configurazione. Per ulteriori informazioni, vedere Utilizzo delle classi di configurazione. Per ulteriori esempi di codice, vedere la classe ConnectionStringsSection e le classi correlate.
Nell'esempio viene utilizzato il metodo non statico per ottenere i dati di configurazione. Tale metodo consente di estrarre questo tipo di informazioni da qualsiasi applicazione. Se si desidera ottenere informazioni sulla configurazione dall'applicazione in cui si trova il codice, è preferibile utilizzare il metodo statico che presenta tempi di elaborazione ridotti. Per ulteriori informazioni, vedere la sezione Utilizzo di impostazioni di configurazione locali e remote in Cenni preliminari sulle API di configurazione di ASP.NET.
Nota: |
---|
Questo esempio si riferisce a un sito Web denominato MyWebSiteRoot. Per eseguire l'esempio, sarà necessario eseguirlo in un sito Web con tale nome o sostituire la stringa fornita al metodo OpenWebConfiguration con il nome del sito Web in uso. |
Esempio
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");
}
Compilazione del codice
L'esempio presenta i requisiti seguenti:
Elemento connectionStrings nel file Web.config principale contenente una connessione denominata NorthwindConnectionString. L'elemento può essere simile al seguente:
<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>
connectionStrings è un elemento figlio diretto dell'elemento <configuration> e un elemento paritetico dell'elemento system.web.
Nota sulla sicurezza: Durante l'archiviazione di informazioni riservate quali i nomi utente e le password in un file di configurazione, è necessario crittografare i valori riservati mediante la configurazione protetta. Per ulteriori informazioni, vedere Procedura: proteggere le stringhe di connessione durante l'utilizzo dei controlli origine dati.
Programmazione efficiente
Se la stringa di connessione specificata non esiste nel file Web.config, non viene restituito alcun oggetto. Quando si procede alla lettura di stringhe di connessione è necessario verificare che il codice abbia restituito un oggetto.
Sicurezza
Per limitarne l'accesso in lettura, è consigliabile proteggere il file di configurazione sul server mediante le impostazioni di sicurezza di Windows. Per proteggere l'elemento connectionString è possibile crittografarlo. Per informazioni dettagliate, vedere Crittografia delle informazioni di configurazione utilizzando la configurazione protetta.
Vedere anche
Riferimenti
Elemento connectionStrings (schema delle impostazioni ASP.NET)