繁体   English   中英

如何从Mysql检索图像并直接在图像控件asp.net中读取它

[英]How to retrieve image from Mysql and read it directly in image control asp.net

我在MySQL中以blob数据类型将图像存储为byte []数组作为blob数据类型,但是在图像控制的asp.net应用程序中找不到正确的方法来读取同一张图片。 在“ slike”表中,有3列-image,imagename,brTablice-我一直在寻找答案,但没有找到任何答案。 这是我的代码:

protected void Button1_Click(object sender, EventArgs e)
{
    string connectionString = "Server=localhost;Uid=Aleksa;port=3306;Pwd=pass;Database=projekat_automobili;";
    MySqlConnection con = new MySqlConnection(connectionString);
    MySqlCommand cmd = new MySqlCommand("SELECT image from slike where brTablice = 'BG-456-SD'", con);
    con.Open();
    MySqlDataReader DR1 = cmd.ExecuteReader();
    if (DR1.Read())
    {
        //TextBoxJmbg.Text = DR1.GetString(DR1.GetOrdinal("jmbg"));
        //TextBoxIP.Text = DR1.GetString(DR1.GetOrdinal("imeprezime"));
        //TextBoxTel.Text = DR1.GetString(DR1.GetOrdinal("tel"));

        byte[] imgg = (byte[])(DR1["image"]);
        if (imgg == null)
        {
            MemoryStream mstream = new MemoryStream(imgg);
            Image1.ImageUrl = System.Drawing.Image.FromStream(mstream).ToString();
            Image1.ImageUrl = "data:image/jpeg;base64," + Convert.ToBase64String(imgg);
            //Image1.ImageUrl = "";
        }
        else
        {
            MemoryStream mstream = new MemoryStream(imgg);
            Image1.ImageUrl = System.Drawing.Image.FromStream(mstream).ToString();
        }
    }


    con.Close();
}

这是项目的一部分。

mysql表:

----------------------------
G_Picture| G_Picture_size |
----------------------------
0xsd/s45e| 9000           |
-----------------------------

uint FileSize = _sqldatareader.GetUInt32(_sqldatareader.GetOrdinal("G_Picture_size"));
                byte[] rawData = new byte[FileSize];
                _sqldatareader.GetBytes(_sqldatareader.GetOrdinal("G_Picture"), 0, rawData, 0, (Int32)FileSize);
                MemoryStream ms = new MemoryStream(rawData);
                __G_Picture.BackgroundImage = new Bitmap(ms);

现在是位图图片。 希望这项工作。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM