如何使用using语句在母版页和内容页上使用数据库连接

时间:2013-04-09 15:57:30

标签: c# database connection

我知道我需要使用using语句来使用数据库连接,以确保它会自动关闭而不用再担心。

但是我使用的是母版页和内容页,它们都需要从数据库中检索数据,并且都有自己的using语句。因此,对于每个请求,我仍然使用两个数据库连接..如何防止这种情况?我想仅为每个请求使用一个数据库连接。

还有一个特例:我也使用缓存,因此在某些情况下根本不需要数据库连接,因为数据是从缓存中检索的。那么我希望根本不会创建数据库连接...

我找不到任何有关此问题的实际解决方案或示例..任何人都可以给我一个提示吗?

2 个答案:

答案 0 :(得分:1)

如果在内容页面中使用MasterType指令,它可以在MasterPage中访问公共变量,包括连接对象。

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

答案 1 :(得分: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
            }
       }
 }