ورود

View Full Version : لود عکسی که آدرس آن در بانک ذخیره شده



hasan_esfahan
یک شنبه 04 اسفند 1387, 13:29 عصر
ابتدا یک data set ایجاد می کنید داخل فرم data set راست کلیک add و datatable را ایجاد می کنی(dt1) سپس روی dt1 راست کلیک کنید و add=> column کلیک کنید (img1) و date type ان را از نوع System.Byte[] قرار دهید سپس به کریستال ریپورت رفته و دیتاست را فراخوانی و فیلد img1 را در قسمت details قرار دهید بعد به محیط کد نویسی بازگشته و کد زیر را درج کنید


private void button1_Click(object sender, EventArgs e)
{

OleDbConnection con = new OleDbConnection(@"provider=microsoft.jet.oledb.4.0; data source=C:\Documents and Settings\hasan\My Documents\mydata.mdb");
OleDbDataReader dr;
OleDbCommand com = new OleDbCommand("select Address from tb1", con);
con.Open();
dr = com.ExecuteReader();

DataSet1 ds1 = new DataSet1();
CrystalReport1 cr1 = new CrystalReport1();
while(dr.Read())
{
DataSet1.dt1Row img = ds1.dt1.Newdt1Row();
img["img1"] = convert(dr["Address"].ToString());
ds1.dt1.Rows.Add(img);
}
con.Close();
cr1.SetDataSource(ds1);
crystalReportViewer1.ReportSource = cr1;


}byte[] convert(string path1)
{
System.IO.FileStream filein = new System.IO.FileStream(path1, FileMode.Open, FileAccess.Read);
BinaryReader bineryimg = new BinaryReader(filein);
return (bineryimg.ReadBytes(Convert.ToInt32(bineryimg.Bas eStream.Length)));
}

shocraneh
پنج شنبه 12 شهریور 1388, 23:28 عصر
تو رو خدا به vb.net تبدیل کردم error داره

imanamami
جمعه 13 خرداد 1390, 15:20 عصر
خوب بود- اما این با oldb هست با Dataset نمی دونی چطوریه؟