错误:类型'字节'的值不能被转换为vb.net'字节的一维数组'

问题描述:

在这里,我已经将PDF文件转换为字节保存在数据库中。 数据库列包含varbinary类型(MAX)!错误:类型'字节'的值不能被转换为vb.net'字节的一维数组'

当我从检索数据库中的数据,然后将其转换为PDF,然后它显示我在这行错误:

fileBytes = Convert.ToByte(dataset.Tables["tbl"].Rows[0][0]) 

我的整个代码是在这里:

Dim fileBytes As Byte() 
    Dim conn As SqlConnection = New SqlConnection("Data Source=desktop-stapg4d\sqlexpress;Initial Catalog=renser;Integrated Security=True") 
    Dim command As SqlDataAdapter 
    Dim dataset As DataSet = New DataSet() 
    Dim sql As String 

    sql = "select file_content from files" 
    command = New SqlDataAdapter(sql, conn) 
    command.Fill(dataset, "tbl") 
    fileBytes = Convert.ToByte(dataset.Tables["tbl"].Rows[0][0]) 

    conn.Open() 

请帮助我的朋友。 在此先感谢!

+0

请发布您的真实代码。这不会编译。 – Plutonix

+0

那么,你绝对不希望将PDF转换为单个字节。考虑CType(yadayada,Byte()) –

+0

@HansPassant,对不起,但我无法得到你,你会解释它相当具有描述性,以便我可以在我的代码中做出同样的? 而我使用Byte()(数组)不是一个字节? – PanKaj

Convert.ToByte是返回恰好一个Byte的函数,但是fileBytes被声明为的Byte阵列,所以该错误消息是相当清楚的,它不能转换的Convert.ToByte的1字节的结果到一个多字节字节数组。