PDA

View Full Version : فیلتر کردن تعدادی رکورد در VS2005



rahele_s
جمعه 08 اردیبهشت 1385, 00:19 صبح
سلام
من با ویژوال بیسیک 2005 کار میکنم
تو پروژه ام یک بانک اطلاعاتی دارم که این بانک اطلاعاتی را تو DBGrid نمایش میدهم
حالا می خواهم فیلتر بزارم
یعنی کاربر بتونه رکورد ها را فیلتر کنه

من DBGrid را به SqlDataSource1 وصل کردم
حالا می خواهم واسش یه کد SQL بنویسم و بعد Open کنم

من نمیدانم کجا کدش را بنویسم

من با VS2003 تونستم این کار را بکنم اما تو اینجا ...
متاسفانه VS2003 با VS2005 خیلی فرق میکنه

از دوستان خواهش میکنم اگر کسی اطلاعاتی راجب این کار دارد دریغ نکند .

manager
جمعه 08 اردیبهشت 1385, 10:21 صبح
دوست من شما می تونید خصوصیت SelectCommand شیئ SqlDataSource رو مجددا تنظیم کنید... اگر تمام داده ها لود (تو WebServer) شدند و شما می خواین فیلتر بزارین می تونید از DataTable.DefaultView.RowFilter استفاده کنید که سرعتش بیشتره ...

پیشنهاد می کنم برای فیلتر سازی خودتون از StoredProcedure استفاده کنید که امنیت بالاتر و همچنین سرعت بیشتری داره استفاده کنید...

تجربه : من هم اولا که .Net2 استفاده می کردم مجذوب ویژگی های جدید اون مثل همین شئی SqldataSource شده بودم. ولی اگر بخواین یه جائی مثلا عمل DataBinding اشیاء وابسته به این DataSource زودتر انجام بشه به مشکل برخورد می کنید و می فهمید که اگر خودتون دستی بنویسید (یه بار بنویسید برای همیشه) کنترلتون بیشتر و برنامتون از یه استاندارد مشخص تری پیروی می کنه !!!

hrmprog
جمعه 08 اردیبهشت 1385, 21:49 عصر
سلام
برای فیلتر کردن می توانید در دستور انتخاب پارامتر تعریف کنید و سپس این پارامترها را از روشهای مختلف ( QyeryString ,session,textbox , ...) مقدار دهی کنی می توانی از Objectdatasource هم استفاده کنی و برای این کار باید یک dataset تعریف کنی و در داخل آن datatablr های مورد نظر و اداپترها را نیز ایجاد کنی و در برنامه توسط objectdatasource از آنها استفاده کنی