我在数据层写了一个类,是DataReader来连接数据表,如下:
×××××××××××××××××××××××××××××××××××××××××
Public Function SearchClass() As SqlDataReader
Dim Conn As New SqlConnection(System.Configuration.ConfigurationSettings.AppSettings("SqlConn"))
Conn.Open()
Dim Cmd As New SqlCommand("ps_SearchClass", Conn)
Dim Dr As SqlDataReader
Dr = Cmd.ExecuteReader()
Return Dr
End Function
×××××××××××××××××××××××××××××××××××××××××
但是用open打开数据库后缺不知道怎么关他,业务逻辑层也不能实现。
业务逻辑层:
×××××××××××××××××××××××××××××××××××××××××
Public LoadClass As qk_Search = New qk_Search Sub OpenDatabase_And_BindToDropDownList()
Dim Dr As SqlDataReader = LoadClass.SearchClass()
DropDownList1.Items.Add(New ListItem("所有的产品类别", "all"))
While Dr.Read()
DropDownList1.Items.Add(New ListItem(Dr.Item("p_class"), Dr.Item("ID")))
End While
Dim Conn As SqlConnection
Conn.Close()
End Sub
×××××××××××××××××××××××××××××××××××××××××
各位帮忙看看,怎么才能关闭数据库连接。谢谢先
×××××××××××××××××××××××××××××××××××××××××
Public Function SearchClass() As SqlDataReader
Dim Conn As New SqlConnection(System.Configuration.ConfigurationSettings.AppSettings("SqlConn"))
Conn.Open()
Dim Cmd As New SqlCommand("ps_SearchClass", Conn)
Dim Dr As SqlDataReader
Dr = Cmd.ExecuteReader()
Return Dr
End Function
×××××××××××××××××××××××××××××××××××××××××
但是用open打开数据库后缺不知道怎么关他,业务逻辑层也不能实现。
业务逻辑层:
×××××××××××××××××××××××××××××××××××××××××
Public LoadClass As qk_Search = New qk_Search Sub OpenDatabase_And_BindToDropDownList()
Dim Dr As SqlDataReader = LoadClass.SearchClass()
DropDownList1.Items.Add(New ListItem("所有的产品类别", "all"))
While Dr.Read()
DropDownList1.Items.Add(New ListItem(Dr.Item("p_class"), Dr.Item("ID")))
End While
Dim Conn As SqlConnection
Conn.Close()
End Sub
×××××××××××××××××××××××××××××××××××××××××
各位帮忙看看,怎么才能关闭数据库连接。谢谢先
解决方案 »
- 帮忙看下
- Sql判断语句,高手指教下
- 请问Session过期时间的问题
- 在应用程序级别之外使用注册为 allowDefinition='MachineToApplication' 的节是错误的。如果在 IIS 中没有将虚拟目录配置
- Request.QueryString["id"]和Request["id"]和Request.Form["id"]的区别?
- 关于shell和Process.Start的问题
- 关于ASP.net提高性能的方面,我这样作了,还需要注意哪些问题?谢谢!!
- 运行时出错!!!
- 请问哪位大哥有asp.net 的word VBA操作实例, 最好是带表格操作的, 最近搞项目遇到这个问题, 不知道如何下手啊, 哪位大哥能帮一下忙, 在下感激不尽..
- 字符串的比较,”20”比”100”大吗?
- 新手学习asp.net,请教各位老师怎样学习,用什么教材好
- 打开aspx页面时出现这个错误,大家帮我看看
适合业务逻辑层
using(SqlConnection conn=new SqlConnection("...."))
{
//然后把CONN当参数传给数据层,当处理完这段代码就能释放连接
}
不知道VB能不能用~
Return (command.ExecuteReader(CommandBehavior.CloseConnection))这样在使用完Reader之后,连接会自动关闭
Return hashtable或arraylist
SqlDataReader read=cmd.ExecuteReader(CommandBehavior.CloseConnection);
//CommandBehavior.CloseConnection为一个枚举,当它作为参数得时候当关闭read得时候也将关闭conn