无法将图像从sql server转换为vb .net格式

时间:2017-08-22 13:01:02

标签: vb.net sql-server-2012

我正在尝试使用id显示用户图像;它会引发异常

  

从'Byte()'类型到'Byte'类型的转换无效。

删除图片代码时;它的工作正常,显示其他数据。

If rdbtninvestigator.Checked = True Then
            Dim mycmd1 As New SqlCommand("Select * From investigator where id=@id ", connection)
            mycmd1.Parameters.Add("@id", SqlDbType.VarChar).Value = txtid1.Text

            Dim table As New DataTable
            Dim adapter As New SqlDataAdapter(mycmd1)
            adapter.Fill(table)
            If table.Rows.Count > 0 Then


                lblid.Text = table.Rows(0)(0).ToString()
                lblname.Text = table.Rows(0)(1).ToString()
                lblusername.Text = table.Rows(0)(2).ToString()
                txtpassword.Text = table.Rows(0)(3).ToString()
                Dim img As Byte
                img = table.Rows(0)(4)
                Dim ms As New MemoryStream(img)
                picuser.Image = Image.FromStream(ms)

                btnupdate.Enabled = True
                btndelete.Enabled = True


            Else
                MsgBox("Account does not exist")
                btnupdate.Enabled = False
                btndelete.Enabled = False



            End If

1 个答案:

答案 0 :(得分:1)

存储在数据库中的图像存储为字节数组。您收到的错误消息说您正在尝试将图像存储在字节变量中,而不是字节数组中。

您需要添加/更正的代码行是:

Dim image As Byte()

该行创建一个类型Byte()的变量,一个字节数组。

相关问题