我从数据库返回一行,我想将SQLDataReader转换为字符串格式,所以我可以将它传递给我的webservice。
Dim rdr As SqlDataReader = sqlcmd.ExecuteReader
If rdr.HasRows Then
rdr.Read()
GetInvHeaderValue = Convert.ToString(rdr.Read())
Return GetInvHeaderValue
Else
GetInvHeaderValue = "<ERR>No Records Returned</ERR>"
End If
如何将SQLDataReader转换为字符串?
有更好的选择吗?
答案 0 :(得分:1)
rdr.Read()
将DataReader移动到下一条记录,如果有下一条记录则返回。所以你可以写:
Dim GetInvHeaderValue As Object
While rdr.Read()
GetInvHeaderValue = rdr(0)'if this value is in Column-Index 0'
GetInvHeaderValue = rdr("GetInvHeaderValue")'if a Column with this name exists'
GetInvHeaderValue = rdr.GetString(0)'returns a String representation(there are getter for all common types)'
End While
您只是转换布尔值,指示字符串是否有下一条记录(“True”/“False”)。
请查看MSDN了解更多信息。