简体   繁体   中英

How to retrieve image from database of image datatype to the PhotoBox in c#

The code below is my photo selecting selector (the other button I have in my project is just sending the picArray to the table in the column of image datatype ):

private void FileSelectorButton_Click(object sender, EventArgs e)
    {

        OpenFileDialog ImageSelectorWindow = new OpenFileDialog();
        ImageSelectorWindow.Filter = "JPG |*.jpg|PNG |*.png|Bitmap |*.bmp";
        ImageSelectorWindow.Title = "Choose an Image";
        if (ImageSelectorWindow.ShowDialog() == System.Windows.Forms.DialogResult.OK)
        {
            fileName = ImageSelectorWindow.FileName;


            FileStream fs = new FileStream(fileName, FileMode.Open, FileAccess.Read);

            picArray = new byte[fs.Length];

            fs.Read(picArray, 0, Convert.ToInt32(fs.Length));
            fs.Close();
        }

        TBFilePath.Text = fileName;

    }

Below is my image retrieval code:

SqlCommand cmd2 = new SqlCommand("SELECT avatar FROM Members WHERE Id = '" + value + "'", con);

SqlDataReader dr = cmd2.ExecuteReader();

MemoryStream ms = new MemoryStream((byte[])dr[0]);

PBMemberImage.BackgroundImage = new Bitmap(ms);

This is giving me the following exception:

在此处输入图片说明

Can someone help me figure out why?

Retrieve Images from sql server database

Take a look at that and try the code below for retrieving your image. Let me know if that works or not.

byte[] img = (byte[])cmd2.ExecuteScalar();
MemoryStream ms = new MemoryStream();
ms.Write(img, 0, img.Length);
PBMemberImage.BackgroundImage = new Bitmap(ms);

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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