读取器关闭时对MetaData的尝试无效。 [英] Invalid attempt to MetaData when reader is closed.
问题描述
尊敬的先生,
i得到错误读者关闭时对MetaData的尝试无效。
我的代码如下:
< pre lang =xml>受保护的子btn_ser_Click(ByVal sender As Object,ByVal e As System.EventArgs)处理btn_ser.Click
report()
End Sub
子报告()
尝试
'Dim conn As New SqlConnection(conStr)
conn.Open()
divprit.Visible = True
Dim w_fr_dt As String = Dt_mdy2ymd(txt_from.Text)
Dim w_to_dt As String = Dt_mdy2ymd(txt_to.Text)
Dim sql As String =select * from tblDLR_RegData where fromDate> ='+ w_fr_dt +'and fromDate < =' + w_to_dt + '
Dim cmd 作为 New SqlCommand(s ql, conn)
Dim dr As SqlDataReader = cmd.Execu teReader()
< span class =code-attribute> Dim db 作为 新 < span class =code-attribute> StringBuilder
< span class =code-attribute> Dim office_cd 作为 字符串 < span class =code-attribute> = 会话( Office_Cd)
dr.Read()
'Dim na 作为 字符串 =
db.Append( < tr 样式 =' font-size:x-small' > < td 样式 =' text-align:left' > )
db.Append(dr( keyId))
db.Append(< / td > )
db.Append(< td 样式 =' text-align:left' > )
'db.Append(dr(dlrId))
db.Append(dlrnm(dr(dlrId),office_cd).ToString()+< / td > )
db.Append( < / td > )
db.Append(< td 样式 =' text-align:left' > )
db.Append(dr(searies))
db.Append(< / td > )
db.Append(< ; td 样式 =' text-align:left' < span class =code-keyword>> )
db.Append(dr(fromRegNo))
db.Append(< / td > )
db.Append(< td < span class =code-attribute> 样式 =' text-align:left' > )
db.Append(dr(toRegNo))
db.Append(< / td > )
db.Append(< td 样式 =' t ext-align:left' > )
db.Append(dr(fromDate))
db.Append (< / td > )
db.Append(< td 样式 =' text-align:left' > )
db.Append(dr( toDate))
db.Append(< / td > )
db.Append(< / tr > )
结束时
lblReport.Text = db.ToString
Catch ex As Exception
Last
conn.Close()
End Try
End Sub
私人 功能 dlrnm( ByVal dlrid 作为 字符串, ByVal officecd 作为 字符串)
Dim qrydlrnm = 从Dealer_Mast中选择*,其中DLR_Cd =& dlrid& 和Office_Cd ='&办公室& '
Dim cmd1 作为 SqlCommand = 新 SqlCommand(qrydlrnm,conn)
conn.Close()
conn.Open()
Dim read1 As SqlDataReader = cmd1.ExecuteReader()
read1.Read()
Dim DLR_Name As String = read1( DLR_Name)。ToString()
' read1.Close()
' conn.Close()
返回 DLR_Name
结束 功能
请尽快回复
谢谢和问候
Umesh Daiya
使用而
私有 功能 dlrnm( ByVal dlrid 作为 字符串, ByVal officecd As String )
Dim qrydlrnm = 从Dealer_Mast中选择*,其中DLR_Cd =& dlrid& 和Office_Cd ='&办公室& '
Dim cmd1 作为 SqlCommand = 新 SqlCommand(qrydlrnm,conn)
conn.Close()
conn.Open()
Dim read1 As SqlDataReader = cmd1.ExecuteReader()
while read1.Read()
Dim DLR_Name 作为 字符串 = read1( DLR_Name)。ToString()
read1.Close() ' 取消注释此行
结束 while
' conn.Close()
返回 DLR_Name
结束 功能
Respected Sir,
i get error "Invalid attempt to MetaData when reader is closed."
my code is as below:
Protected Sub btn_ser_Click(ByVal sender As Object, ByVal e As System.EventArgs) Handles btn_ser.Click
report()
End Sub
Sub report()
Try
'Dim conn As New SqlConnection(conStr)
conn.Open()
divprit.Visible = True
Dim w_fr_dt As String = Dt_mdy2ymd(txt_from.Text)
Dim w_to_dt As String = Dt_mdy2ymd(txt_to.Text)
Dim sql As String = "select * from tblDLR_RegData where fromDate>='" + w_fr_dt + "' and fromDate<='" + w_to_dt + "'"
Dim cmd As New SqlCommand(sql, conn)
Dim dr As SqlDataReader = cmd.ExecuteReader()
Dim db As New StringBuilder
Dim office_cd As String = Session("Office_Cd")
While dr.Read()
'Dim na As String =
db.Append("<tr Style='font-size:x-small'><td Style='text-align: left'>")
db.Append(dr("keyId"))
db.Append("</td>")
db.Append("<td Style='text-align: left'>")
'db.Append(dr("dlrId"))
db.Append(dlrnm(dr("dlrId"), office_cd).ToString() + "</td>")
db.Append("</td>")
db.Append("<td Style='text-align: left'>")
db.Append(dr("searies"))
db.Append("</td>")
db.Append("<td Style='text-align: left'>")
db.Append(dr("fromRegNo"))
db.Append("</td>")
db.Append("<td Style='text-align: left'>")
db.Append(dr("toRegNo"))
db.Append("</td>")
db.Append("<td Style='text-align: left'>")
db.Append(dr("fromDate"))
db.Append("</td>")
db.Append("<td Style='text-align: left'>")
db.Append(dr("toDate"))
db.Append("</td>")
db.Append("</tr>")
End While
lblReport.Text = db.ToString
Catch ex As Exception
Finally
conn.Close()
End Try
End Sub
Private Function dlrnm(ByVal dlrid As String, ByVal officecd As String)
Dim qrydlrnm = "select * from Dealer_Mast where DLR_Cd=" & dlrid & " and Office_Cd='" & officecd & "'"
Dim cmd1 As SqlCommand = New SqlCommand(qrydlrnm, conn)
conn.Close()
conn.Open()
Dim read1 As SqlDataReader = cmd1.ExecuteReader()
read1.Read()
Dim DLR_Name As String = read1("DLR_Name").ToString()
'read1.Close()
'conn.Close()
Return DLR_Name
End Function
plz reply as soon as possible
Thanks and Regards
Umesh Daiya
Usewhile
Private Function dlrnm(ByVal dlrid As String, ByVal officecd As String) Dim qrydlrnm = "select * from Dealer_Mast where DLR_Cd=" & dlrid & " and Office_Cd='" & officecd & "'" Dim cmd1 As SqlCommand = New SqlCommand(qrydlrnm, conn) conn.Close() conn.Open() Dim read1 As SqlDataReader = cmd1.ExecuteReader() while read1.Read() Dim DLR_Name As String = read1("DLR_Name").ToString() read1.Close()'Uncommented this line End while 'conn.Close() Return DLR_Name End Function
这篇关于读取器关闭时对MetaData的尝试无效。的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!