Karena mungkin saja tidak ada data gambar yang disimpan sebelumnya untuk satu baris, Anda perlu menguji DBNull sebelum mencoba menggunakannya:
If IsDBNull(dr("photo")) = False Then
Dim imagebytes As Byte() = CType(dr("photo"), Byte())
Using ms As New IO.MemoryStream(imagebytes)
PictureBox1.Image = Image.FromStream(ms)
PictureBox1.SizeMode = PictureBoxSizeMode.StretchImage
End Using
Else
' maybe display a "no Photo Available" stock image
End If
Perhatikan bahwa DBNull
. ini tes berbeda dari yang digunakan Steve. IsDBNull
adalah fungsi bahasa sedangkan yang dia gunakan adalah metode DataReader
objek, yang juga mengapa ada persyaratan yang berbeda. Namun cara ketiga adalah membandingkannya dengan System.DbNull
:
If DBNull.Value.Equals(dr("photo")) = False Then
...
End If