web應用程序中的數據庫連接(2)
發表時間:2024-06-08 來源:明輝站整理相關軟件相關文章人氣:
[摘要]3、設置不同子目錄下應用程序的數據庫鏈接 這是一個很有意思的方法,在設置前,先說明一下它的用途: 如果在一個虛擬目錄下有多個子目錄,每一個子目錄下下的web應用程序都需要連接不同的數據庫,這如何做呢?? 一種方法是在每一個子目錄下分別建立一個web.config,用它來設置這個目錄下的數據庫...
3、設置不同子目錄下應用程序的數據庫鏈接
這是一個很有意思的方法,在設置前,先說明一下它的用途:
如果在一個虛擬目錄下有多個子目錄,每一個子目錄下下的web應用程序都需要連接不同的數據庫,這如何做呢??
一種方法是在每一個子目錄下分別建立一個web.config,用它來設置這個目錄下的數據庫連接。但這種方法的問題是需要維護每一個了目錄下的web.config。
方法二,是只在虛擬目錄下建立一個web.config,在它里面設置每一個子目錄下的應用程序的數據庫連接。說到這里,你會想到上面的第二種方法,使用多個不同的key值來設置,這的確是一個辦法。
這里,我想說明的是另一種方法:在虛擬目錄下布置web.config,在其中使用location標記,使用同一個key值來連接數據庫,這樣做的好處很明顯,因為用同一個key值,將導致在所有目錄下的應用程序中,都可以使用共同的語句來連接數據庫,這在程序以后發生位置遷移時,并不用修改程序中連接數據庫的語句。
具體設置如下:
<location path="news">
<appsettings>
<add key="connstring" value="uid=flyangel;password=3.1415926;database=news;server=(local)" />
</appsettings>
</location>
<location path="bbs">
<appsettings>
<add key="connstring" value="uid=flyangel;password=3.1415926;database=bbs;server=(local)" />
</appsettings>
</location>
<location path="soft">
<appsettings>
<add key="connstring" value="uid=flyangel;password=3.1415926;database=soft;server=(local)" />
</appsettings>
</location>
注:上例中news、bbs、soft分別是虛擬目錄下的子目錄。
程序中使用連接時,采用下面的方法:
public function getconnectionstring()
configurationsettings.appsettings().item("connstring")
end sub
最后需要說明的一點是,為了有效地利用.config文件,你應當創建標準的鍵名和值定義供所有的應用程序開發人員所用。這樣就可以讓同一項目的開發人員采用公共的項目設置。這些標準在部署應用程序和將其轉化為產品的時候非常有用。