.NET超级问题~ 连接池和存储过程及类调用和母版页集合问题~~~
myidc 2007-08-29 06:33:25 最近做一个网站,遇到下面问题,2-3台机器打开后,sql里面的连接数爆满~
错误信息:
----------------------
超时时间已到。超时时间已到,但是尚未从池中获取连接。出现这种情况可能是因为所有池连接均在使用,并且达到了最大池大小。
----------------------
使用了母版页,都是使用的存储过程,没有一个sql语句.大约7-8个页面使用同一个母版页,母版页很简单,头-中-下 都是空的.左边是一个datalist 显示下面样式的信息:
-----------------------------
商标列表
第一类(50个)
第二类(90个)
....
....
共45条
-----------------------------
基础链接类:
引用下面的方法绑定到datalist上面 ,它调用一个存储过程:BrandTypeList_Count
------------------------------------------------------------------
private void BindDataLast()
{
DataSet ds = sql.RunProcedure("BrandTypeList_Count", "BrandTypeList_Count");
Dl_Brand_Type.DataSource = ds;
Dl_Brand_Type.DataBind();
if (ds.Tables[0].Rows.Count > 0)
{
for (int i = 0; i < ds.Tables[0].Rows.Count; i++)
{
HyperLink hy = (HyperLink)Dl_Brand_Type.Items[i].FindControl("hl_title");
Label lab_num = (Label)Dl_Brand_Type.Items[i].FindControl("lab_num");
lab_num.Text = "[ " + ds.Tables[0].Rows[i]["BrandCount"].ToString() + " ]";
hy.Text = ds.Tables[0].Rows[i]["type_names"].ToString();
hy.ToolTip = ds.Tables[0].Rows[i]["type_depict"].ToString();
hy.NavigateUrl = "~/Brand/Brand_List.aspx?TypeId=" + ds.Tables[0].Rows[i]["type_value"].ToString();
hy.Style.Value = "font-size:9pt";
}
}
}
-------------------------------------------------------------
存储过程:BrandTypeList_Count
-----------------------
CREATE PROCEDURE dbo.BrandTypeList_Count
/*
(
@parameter1 int = 5,
@parameter2 datatype OUTPUT
)
*/
AS
/* SET NOCOUNT ON */
SELECT Brandtype.type_names, Brandtype.type_value, COUNT(Brand.brand_id)
AS BrandCount, Brandtype.type_depict
FROM Brand INNER JOIN
Brandtype ON Brand.brand_cognizance = Brandtype.type_value
GROUP BY Brandtype.type_names, Brandtype.type_value, Brandtype.type_depict
ORDER BY Brandtype.type_value
RETURN
GO
----------------------------------------------------------