2013-04-09 87 views
0

在主頁面和內容頁面上使用數據庫連接我知道我需要使用using語句來使用數據庫連接,以確保它將自動關閉而不用擔心。如何使用語句

但我正在使用一個master頁面和一個內容頁面,這兩個頁面都需要從dataabse中檢索數據,並且都有自己的using語句。所以對於每一個請求,我仍然在使用兩個數據庫連接。這怎麼能被阻止?我想只爲每個請求使用一個數據庫連接。

還有一個特例:我也使用緩存,所以在某些情況下根本不需要有數據庫連接,因爲數據是從緩存中檢索的。於是我想,沒有任何數據庫連接,在所有已創建...

我找不到這方面有任何實際的解決方案或例子..有誰能夠給我一個提示?

回答

1

如果在內容頁面中使用MasterType指令,它可以訪問MasterPage中的公共變量,包括連接對象。

http://msdn.microsoft.com/en-us/library/ms228274%28v=vs.80%29.aspx/css

+0

沒關係,這實際工作時,我做到以下幾點: 任何地方創建母版公共連接變量,初始化和重複使用可變我使用的連接,並關閉使用的的激發Page_Unload連接母版。然後,我對每個請求最多隻有一個連接。 – Allie 2013-05-15 15:29:46

0

這取決於應用程序的架構,但假設母版擁有的內容頁面,你應該簡單地通過連接到內容頁面的方法。例如

//in master page pseudo code 
public void UpdateRecord(string updateField) 
{ 
     using (myConnection = new connection()) 
     { 
      //master page does something with db 
      try 
      { 
        ContentPage.GetContent(myConnection); 
      } 
      catch 
      { 
       // handle expected errors 
       // fail on other ones 
      } 
     } 
}