在ASP.NET 2.0中,提供了更方便的配置文件訪問的類,具體可以到 System.Configuration 名稱空間下進行查看。本文提供一種在開發過程中常用的得到數據庫字符串的方法,為方便使用,寫成一個方法進行調用:
public string GetConnectionString( string _connectionStringsName )
{
System.Configuration.ConnectionStringSettingsCollection config = System.Configuration.ConfigurationManager.ConnectionStrings;
for (int i = 0 ; i < config.Count ; i++)
{
if (config[i].Name.Equals(_connectionStringsName, StringComparison.OrdinalIgnoreCase))
return config[i].ToString();
}
return String.Empty;
}
如果web.config配置如下:
<connectionStrings>
<add name="ConnectionString1" connectionString="Persist Security Info=False;User ID=sa;Password=;Initial Catalog=DataBase1;Server=(local);" providerName="System.Data.SqlClient"/>
<add name="ConnectionString2" connectionString="Persist Security Info=False;User ID=sa;Password=;Initial Catalog=DataBase2;Server=(local);" providerName="System.Data.SqlClient"/>
</connectionStrings>
如果寫成靜態類方法,則可以使用下面的方法進行調用:
string ConnectString = XianhuiMengUtil.GetConnectionString("ConnectionString1");
另外,如果在遍歷時進行輸出,則可以看到多出來一個配置項,那是因為machine.config裡已經默認定義理一個數據庫連接,內容如下:
<connectionStrings>
<add name="LocalSqlServer" connectionString="data source=.SQLEXPRESS;Integrated Security=SSPI;AttachDBFilename= DataDirectory aspnetdb.mdf;User Instance=true" providerName="System.Data.SqlClient" />
</connectionStrings>
這就是許多網友在論壇上經常會問:為什麼我的程序會調用 SQLEXPRESS 數據庫的原因,如果你的數據庫配置不正確,或者無法打開時,就會使用 SQLEXPRESS 數據庫。