PDA

View Full Version : سوال: مشکل بازیابی عکس از دیتابیس و نمایش در گرید ویو



امیر مهرشاد
پنج شنبه 15 خرداد 1393, 23:46 عصر
سلام
من با این متد عکسها رو تبدیل و به داخل بانک ارسال میکنم و مشکلی ندارم



public static byte[] ImageToByte(Image img)
{
ImageConverter converter = new ImageConverter();
return (byte[])converter.ConvertTo(img, typeof(byte[]));
}


حالا یه گرید گزاشتم برای نمایش و ستون اونم از نوع image در نظر گرفتم ولی هنگام خواندن با پیغام خطا مواجه میشم میدونید برای رفع مشکل باید چکار کنیم ؟

اینک کد ذخیره و نمایش :



SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=aks;User ID=sa;Password=123");
string query = "INSERT INTO Table_aks (name, aks)VALUES('" + txtName.Text.Trim() + "','" + ImageToByte(pictureBox1.Image) + "')";
SqlCommand com=new SqlCommand(query,con);

con.Open();
com.ExecuteNonQuery();
con.Close();
BindGrid();


متد بایند هم اینه :




void BindGrid()
{
dataGridView1.AutoGenerateColumns = false;
SqlConnection con = new SqlConnection("Data Source=.;Initial Catalog=aks;User ID=sa;Password=123");
string query = "SELECT aks, name FROM Table_aks";
SqlDataAdapter da=new SqlDataAdapter(query,con);
DataSet ds=new DataSet();
da.Fill(ds);
dataGridView1.DataSource = ds.Tables[0].DefaultView;
foreach (DataGridViewRow row in dataGridView1.Rows)
{
row.Height = 80;
}
}

اینم خطا :

Mahmoud.Afrad
جمعه 16 خرداد 1393, 00:23 صبح
تک کوتیشن در sql برای رشته به کار میره پس دو طرف مقدار بایتها نیازی به تک کوتیشن نیست
+ "'," + ImageToByte(pictureBox1.Image) + ")";

امیر مهرشاد
جمعه 16 خرداد 1393, 21:27 عصر
تک کوتیشن در sql برای رشته به کار میره پس دو طرف مقدار بایتها نیازی به تک کوتیشن نیست
+ "'," + ImageToByte(pictureBox1.Image) + ")";
سلام مهندس خوبید - خیلی ممنون از راهنمایی فنی که فرمودید اصلن به این موضوع توجه نکرده بودم وظاهرا همه چی هم درست بود ولی بازم باگ داشت این راهنماییتون بدردمون خورد در هر صورت از راهنمایی که فرمودید بقیه هم می تونن استفاده کنن و از شما متشکرم:تشویق: