public void SavePic(int P_Id, PictureBox pb)
{
//تبدیل تصویر به مجموعه ای از بایت ها
MemoryStream ms = new MemoryStream();
pb.Image.Save(ms, pb.Image.RawFormat);
byte[] arrpic = ms.GetBuffer();
ms.Close();
// ذخیره تصویر در بانک اطلاعاتی
string StrQuery = "UPDATE Tbl SET PIC = @pic WHERE(ID = @id)";
SqlCommand cmd = new SqlCommand(StrQuery, Con.Con);
Con.Open();
try
{
cmd.Parameters.Add("@id", SqlDbType.NVarChar, 50).Value = P_Id;
cmd.Parameters.Add("@pic", SqlDbType.VarBinary).Value = arrpic;
cmd.ExecuteNonQuery();
}
catch (Exception e) { MessageBox.Show(e.Message, "CommitSavePic"); }
Con.Close();
}
SqlDbType.VarBinary
public void ShowePic(int P_Id, PictureBox pb)
{
try
{
string StrQuery = "SELECT Pic FROM tbl WHERE ID = @ID";
da = new SqlDataAdapter(StrQuery, Con.Con);
da.SelectCommand.Parameters.Add("@ID", SqlDbType.Int).Value = P_Id;
ds = new DataSet();
Con.Open();
da.Fill(ds, "Persons");
Con.Close();
byte[] arrPic = (byte[])(ds.Tables["Persons"].Rows[0]["Pic"]);
MemoryStream ms = new MemoryStream(arrPic);
pb.Image = Image.FromStream(ms);
}
catch (SystemException ex)
{
MessageBox.Show(ex.Message, "ShowePic");
}
}