您好我正在尝试将图像转换为字节数组以将其作为byte()传递给sql。我试图使用图像转换器,但它一直在失败
Dim converter As New ImageConverter
nRow.Signature = converter.ConvertTo(imgSignature, TypeOf(Byte())
我一直得到的错误是byte是一个类型而不是表达式
答案 0 :(得分:17)
您可以使用MemoryStream
。通过将图像保存到MemoryStream
,您可以从图像中获取数据的字节数组:
Dim ms = new MemoryStream()
imgSegnature.Save(ms, System.Drawing.Imaging.ImageFormat.Jpeg) ' Use appropriate format here
Dim bytes = ms.ToArray()
答案 1 :(得分:17)
VB.NET TypeOf运算符不会按照您的想法执行。可能由于C#typeof
运算符而有些混乱。 VB.NET等价物是GetType()函数。这很好用:
Dim converter As New ImageConverter
nRow.Signature = converter.ConvertTo(imgSignature, GetType(Byte())
类型转换器使用MemoryStream以PNG图像格式进行转换。