如何将Blob值转换为图像

时间:2019-07-07 19:46:28

标签: c# mysql asp.net

我在MySQL数据库中有一个BLOB值。

我已经阅读了几本教程,但是找不到解决方法。

有什么想法可以读取图像(blob值)并在ASP.NET图像组件中查看吗?

我发现的所有信息都是关于将数组转换为图像的信息,但是我有一个Blob值

2 个答案:

答案 0 :(得分:1)

您是否尝试从db读取图像并将其放入MemoryStream,然后在图像组件中显示?像

            Byte[] byteBLOBData = new Byte[bufferSize];
            byteBLOBData = "read image from database"
            MemoryStream stmBLOBData = new MemoryStream(byteBLOBData);

            pictureBox.Image = Image.FromStream(stmBLOBData);

参考:https://bytes.com/topic/c-sharp/answers/965811-retrieve-blob-picture-mysql-database-c

答案 1 :(得分:0)

问题解决了。

确切的问题是查询...

代码已完成...

Image picture = new Image();
            string queryImage = "SELECT image FROM news WHERE id = @id";
            using (MySqlConnection con1 = new MySqlConnection(servidor))
            {
                MySqlCommand cmd1 = new MySqlCommand(queryImage, con1);
                cmd1.Parameters.AddWithValue("@id", rd[0]);
                con1.Open();
                byte[] bytesImage = (byte[])cmd1.ExecuteScalar();
                picture.ImageUrl = "data:image;base64," + Convert.ToBase64String(bytesImage);
            }