我知道我需要使用using语句来使用数据库连接,以确保它会自动关闭而不用再担心。
但是我使用的是母版页和内容页,它们都需要从数据库中检索数据,并且都有自己的using语句。因此,对于每个请求,我仍然使用两个数据库连接..如何防止这种情况?我想仅为每个请求使用一个数据库连接。
还有一个特例:我也使用缓存,因此在某些情况下根本不需要数据库连接,因为数据是从缓存中检索的。那么我希望根本不会创建数据库连接...
我找不到任何有关此问题的实际解决方案或示例..任何人都可以给我一个提示吗?
答案 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
}
}
}