Nella versione 2.0 del framework è stata aggiunta questa nuova classe: la classe SqlConnectionStringBuilder. La sua funzione è quella di creare la stringa di connessione per un database SQL Server date le informazioni di base sul server e sul nome del database, più eventuali valori aggiuntivi.
La classe deriva da DbConnectionStringBuilder, cui si riferiscono anche le classi OleDbConnectionStringBuilder, OdbcConnectionStringBuilder, OracleConnectionStringBuilder, create per replicare la stessa funzione per tutti gli altri tipi di database.
Ecco un paio di esempi:
public static string GetSqlConnectionString()
{
SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder();
builder.DataSource = @"servername";
builder.InitialCatalog = @"Northwind";
builder.UserID = @"sa";
builder.Password = @"sa_password";
return builder.ConnectionString;
}
public static string GetSqlExpressConnectionString()
{
SqlConnectionStringBuilder builder = new SqlConnectionStringBuilder();
builder.DataSource = @".\SQLEXPRESS";
builder.AttachDBFilename = @"C:\WebSite\App_Data\DataBase.mdf";
builder.IntegratedSecurity = true;
builder.UserInstance = true;
return builder.ConnectionString;
}
Questi tipi di classi sono sicuramente utili quando la stringa di connessione può essere composta da valori "dinamici", per esempio scelti dall'utente, per evitare quindi che questi valori possano rappresentare degli attacchi di sql injection.