在我的代码隐藏中,我有这个vb:
Dim reader as idatareader = includes.SelectDepartmentID(PageID)
While reader.Read
Did = reader("departmentid")
GroupingHeading = reader("heading")
Folder = reader("folder")
If reader("OwnBanner") Is DBNull.Value Then
OwnBanner = String.Empty
Else
OwnBanner = reader("ownbanner")
End If
然后在我的班上我有:
Public Function SelectDepartmentID(ByVal PageID As Integer) As IDataReader
Dim Command As SqlCommand = db.GetSqlStringCommand("sql")
db.AddInParameter(Command, "@pageid", Data.DbType.Int32, PageID)
Dim reader As IDataReader = db.ExecuteReader(Command)
reader.Read()
Return reader
End Function
没有出现错误,但读者没有回复任何内容。我的代码中有错误吗?
感谢。
答案 0 :(得分:2)
尝试删除
reader.Read()
来自SelectDepartmentID的行。
答案 1 :(得分:1)
您正在跳过阅读器的第一行。在return语句之前删除reader.Read()
函数中的SelectDepartmentID
语句。
任何返回阅读器的函数都不应该假设调用代码将对它做什么,只是不加修改地返回它。