Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/asp.net/31.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Asp.net 将BitmapImage转换为字节数组并存储到Sql数据库中_Asp.net_.net_Vb.net - Fatal编程技术网

Asp.net 将BitmapImage转换为字节数组并存储到Sql数据库中

Asp.net 将BitmapImage转换为字节数组并存储到Sql数据库中,asp.net,.net,vb.net,Asp.net,.net,Vb.net,我想将位图图像存储到字节,但在运行时我遇到了如下错误 从类型图像格式转换为类型整型无效 请任何人帮助我 For Each file As UploadedFile In` DOC.UploadedFiles` Context.Cache.Remove(Session.SessionID + "UploadedFile") Dim stream As Stream = file.InputStream

我想将位图图像存储到字节,但在运行时我遇到了如下错误

从类型图像格式转换为类型整型无效

请任何人帮助我

For Each file As UploadedFile In` DOC.UploadedFiles`
                Context.Cache.Remove(Session.SessionID + "UploadedFile")
                Dim stream As Stream = file.InputStream
                GenerateThumbnails(0.5, stream)

                Dim DocumentImgName = file.FileName
                Dim imgData As Byte() = New Byte(ViewState("CompressedImageData")) {}
                Dim DocumentSplit = DocumentImgName.Split(".")

                Dim ImgName = DocumentSplit(0)
                Dim ImgExt = DocumentSplit(1)

                stream.Read(imgData, 0, imgData.Length)

                ViewState("imgData") = imgData
                ViewState("FileName") = ImgName
                ViewState("FileExtension") = ImgExt

                Dim ms As New MemoryStream()

                ms.Write(imgData, 0, imgData.Length)
   Next

Private Sub GenerateThumbnails(ByVal scaleFactor As Double, ByVal sourcePath As Stream)

   Using image__1 = Image.FromStream(sourcePath)

            ' can given width of image as we want
            Dim newWidth = CInt(image__1.Width * scaleFactor)

            ' can given height of image as we want
            Dim newHeight = CInt(image__1.Height * scaleFactor)

            Dim thumbnailImg = New Bitmap(newWidth, newHeight)
            Dim thumbGraph = Graphics.FromImage(thumbnailImg)

            thumbGraph.CompositingQuality = CompositingQuality.HighQuality
            thumbGraph.SmoothingMode = SmoothingMode.HighQuality
            thumbGraph.InterpolationMode = InterpolationMode.HighQualityBicubic

            Dim imageRectangle = New Rectangle(0, 0, newWidth, newHeight)

            thumbGraph.DrawImage(image__1, imageRectangle)

            ViewState("CompressedImageData") = image__1.RawFormat

        End Using
    End Sub

您可以在将图像数据转换为字节数据类型后存储图像数据,如下所示:


然后可以将byteImage()存储到类型为Image或Varbinary的字段中。

我的应用程序中没有使用任何图片框,那么该怎么办,非常感谢你的回答
Dim ms As New Syste.IO.MemoryStream
Me.PictureBox1.Image.Save(ms, PictureBox1.Image.RawFormat)
Dim byteImage() As Byte = ms.ToArray