PDA

View Full Version : اضافه کردن نتیجه کوئری به دیتا گرید



vbsalam
دوشنبه 02 مرداد 1391, 23:22 عصر
سلام
یه سوال داشتم
من میخوام یه سرچ که توی دیتا گرید میزنم و نتیجه رومیریزه رو دیتا ست یا دیتا تیبل دیگه
بعدم نمایش میده تو گرید
اما من میخوام هربار که سرچ انجام شد نتیجه ها اضافه بشه به روردهای قبلی که از سرچ قبل تو گرید بوده
DataSet ds = new DataSet();
SqlConnection cn = new SqlConnection("server=(local);database=kian90;integrated security=true;");
SqlDataAdapter da = new SqlDataAdapter("select * from tblINVEnter",cn );
da.Fill(ds);
dataGridView1.DataSource = ds;



ببینید این کد هربار نتیجه سرچ رو تو گرید نشون میده
مثلا دفعه ی اول 3 تا رکورد برمیگردونه
و وقتی میخواد نتیجه سرچ بعدی رو نشون میده این 3رکورد میره و نتیجه جدید نشون داده میشه
من میخوام اون 3رکورد از نتیجه قبلی تو گرید بمونه و بقیش از سطر بعدی جدید دیتاگرید اضافه بشه
یه توضیحی بدین که چیکار کنم
ممنون

ali_habibi1384
سه شنبه 03 مرداد 1391, 09:06 صبح
براي سرچ كردن در حالتي كه شما يك ديتا تيبل از داده هاي موجد رو داريد استفاده از كانكشن و سپردن اون به اس كيو ال اصولي نيست.شما ميتونيد از دستور defultview.filter در datatable استفاده كنيد و نتيجه رو به تيبل تبديل كنيد بصورت .totable() ار متدهاي خود ديتا تيبل .اينجوري باري روي سرورت نمياد. اگه اين روش رو دست داشتي بگو بيشتر توضيح بدم.

hakim22
سه شنبه 03 مرداد 1391, 09:44 صبح
با استفاده از گزینه ی :
TableAdapter.ClearBeforeFill
که باید روی false تنظیم بشه اینکارو انجام بدید
البته برای کد شما tableAdabpter همون da میشه

veniz2008
سه شنبه 03 مرداد 1391, 11:21 صبح
براي سرچ كردن در حالتي كه شما يك ديتا تيبل از داده هاي موجد رو داريد استفاده از كانكشن و سپردن اون به اس كيو ال اصولي نيست.شما ميتونيد از دستور defultview.filter در datatable استفاده كنيد و نتيجه رو به تيبل تبديل كنيد بصورت .totable() ار متدهاي خود ديتا تيبل .اينجوري باري روي سرورت نمياد. اگه اين روش رو دست داشتي بگو بيشتر توضيح بدم.
ممنون میشم اگه با یک مثال توضیح بدید.

ali_habibi1384
سه شنبه 03 مرداد 1391, 23:48 عصر
ممنون میشم اگه با یک مثال توضیح بدید.


datatable dt = new datatable();
datatable dtTemp = new datatable();
فرض كنيم dt توش يكسري مقادير وجود داره ميخوايم اونو فيلتر كنيم بريزيم توي dttemp و به گريد پاسش بديم:
dt.defaultview.rowfilter="name = 'ali'";
dttemp=dt.defoultview.totable();
dg.datasurce=dttemp;

ذهني نوشتم ديگه سينتكس درستش رو موقع نوشتن واقعي درست كنيد