在C#中将二进制数据转换为图像

本文关键字:转换 图像 数据 二进制 | 更新日期: 2023-09-27 18:19:53

我被如何从MySQL数据库中检索图像并将其从二进制格式转换为位图图像以在ASP:ImageHTML Image中显示所困扰。我可以上传图像,但它被转换为二进制数据,我不明白如何将其转换回位图格式:(

protected void Button2_Click(object sender, EventArgs e)
{
    cmd = new OdbcCommand("SELECT picture from profile limit 1", MyConnection);
    MyConnection.Open();
    OdbcDataReader dr = cmd.ExecuteReader();
    if (dr.HasRows == false)
    {
        Response.Write("No rows");
    }
    if(dr.Read())
    {
        // WHAT TO CODE HERE?
    }
}

任何人都请帮我填写此处编码内容部分的代码。

在C#中将二进制数据转换为图像

如果你修改这个方法,它应该能做到:

        public BitmapImage ConvertToImage(System.Data.Linq.Binary binary)
    {
        byte[] buffer = binary.ToArray();
        MemoryStream stream = new MemoryStream(buffer);
        BitmapImage image = new BitmapImage();
        image.BeginInit();
        image.StreamSource = stream;
        image.EndInit();
        return image;
    }

从Add引用中添加"PresentationCore"dll,以获得引用的System.Windows.Media.Imaging dll,从而消除缺少的ref错误…:)