在VB.Net中将SQLDataReader转换为String

时间:2010-10-29 12:12:23

标签: vb.net .net-2.0 sqldatareader

我从数据库返回一行,我想将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转换为字符串?

有更好的选择吗?

1 个答案:

答案 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了解更多信息。