ASP.NET1.1和ASP.NET2.0:數據庫連接字符串的不同設置
以前在asp.net1.1時代,數據庫連接字符串都是寫在web.config文件的appSettings這一小節下面的.具體的寫法如下:
- < configuration>
- < appSettings>
- < add key="ConnString" value="Server=(local);Database=pubs;User Id=sa;Password=sa;"/>
- < /appSettings>
當然在appsetings段中不僅可以存儲數據庫連接字符串,還可以存儲和程序有關的一些自定義的配置
信息.在使用時要先using System.Configuration;然后string strConn=Configuration.AppSettings["ConnString"];即可.
從ASP.NET1.1時代到了asp.net2.0時代,不僅保留了appSettings段,還新增加了一個connectionStrings段,一般都把程序中用到的數據庫 連接字符串放到該小節下,而其他的自定義配置信息放到appSettings小節下.同時微軟不在推薦使用Configuration類,而是推薦使用 ConfigurationManager類.使用方法為,在connectionStrings小節下加入如下內容:
- < add name="ConnString" connectionString="Server=(local);Database=pubs;User Id=sa;Password=sa;" providerName="System.Data.SqlClient"/>
在使用時,還是用先using System.Configuration;不過必須注意的是,必須在項目中添加引用,在彈出的對話框中找到System.Configuration,點添加,否則,還是無法使用ConfigurationManager類的.
做完了這部,就是怎么得到數據庫連接字符串了,這里我們一般用以下方法得到連接字符串.
string strConn=ConfigurationManager.ConnectionStrings["ConnString"].ToString();
當然,方括號中也可以用從0開始的索引,不過需要注意的是,asp.net2.0中的web.config中的配置是從機器中的machine.config中繼承過來的,而在machine.config文件默認會有一個指向SQL2005 Express的數據庫連接字符串, 所以當你直接用ConfigurationManager.ConnectionStrings[0].ToString();時得到的并不是你寫在 web.config中的數據庫連接字符串,而是那個指向SQL2005 Express的數據庫連接字符串.我就在這個地方卡了好一陣子,后來利用斷點調試,才發現這個問題,所以***還是直接用連接字符串的名字比較好,不會出問題.
以上就是asp.net1.1和asp.net2.0中數據庫連接字符串的不同設置。
【編輯推薦】