فیلتر کردن Linq بعد از دریافت اطلاعات
سلام دوستا عزیز
کسانی که با ado.net کار کرده باشند میدونند اطلاعات دریافتی از ado.net بعد از دریافت از بانک اطلاعاتی میشه داخل BindingSource ریخت و اطلاعات بدون اینکه دوباره به بانک اطلاعاتی وصل بشی فیلتر کرد و از فیلتر در آورد
this.calendarTableAdapter.Fill(this.dataSet1.Calen dar);
calendarBindingSource.Filter = strFilter1;
calendarBindingSource.Filter = strFilter2;
calendarBindingSource.Filter = strFilter3;
calendarBindingSource.Filter = "";
حالا می خواستم ببینم همچین چیزی در Linq هم وجود داره
مثلا" من با کد زیر اطلاعات بوسیله Linq از بانک دریافت می کنم حالابدون اتصال مجدد به بانک اطلاعاتی می خوام اطلاعات فیلتر کنم
var selectt = from p in _linq.Calendars
select p;
dataGridView1 .DataSource = selectt ;
فقط دوستان گرامی در نظر داشته باشند نمی خوام با کلمه where دوباره linq رو بنویسم و این جوری فیلتر کنم
می خوام بدون اتصال مجدد به بانک اطلاعاتی فیلتر انجام بشه
با سپاس
نقل قول: فیلتر کردن Linq بعد از دریافت اطلاعات
فکر کنم این لینک بدرد شما بخورد
نقل قول: فیلتر کردن Linq بعد از دریافت اطلاعات
راستی میشه در مورد فیلتر خود bindingsource توضیح بدی چون خودم قبلا این کار رو در dataview انجام میدادم ولی با خود بایندیگ نتونستم توی اون لینک که برات گذاشتم عمل sort , filter بدون واکشی دوباره جهت datagridview را انجام دادم البته با کمک استاد gwbasic
نقل قول: فیلتر کردن Linq بعد از دریافت اطلاعات
وقتی اطلاعات رو از طریق دیتاست به دیتا گرید وصل کنی(به صورت ویزاردی) خودش یه کلاس BindingSource میسازه و اطلاعات رو از طریق BindingSource به دیتا گرید ویو انتقال میده
و اگه خواستی میتونی اطلاعات رو بدون اینکه به بانک اطلاعتی وصل بشی از طریق BindingSource فیلتر کنی
طریق فیلتر کردن هم به صورت زیر هست
calendarBindingSource.Filter ="ID= '"+strID+"'";
نوع کد نویسی هم به زبان sql است
اگه هم به صورت دستی کد نویسی کردی به جای اینکه اطلاعات رو مستقیم بریزی توی دیتاگرید اول توی یک نمونه از BindingSource میریزی و بعد BindingSource رو به دیتاگرید ویو وصل میکنی
و هر وقت خواست به روش بالا اطلاعات رو فیلتر میکنی
مزیت این کار این هست که شما فرض کن دریافت اطلاعات و انتقال به دیتاگرید n ثانیه زمان میبره اگه هرسری که شما بخوای فیلتر کنی بخوای اطلاعات از بانک بخونی باید n ثانیه صبر کنی ولی با این روش چون فیلتر بر روی اطلاعات موجود انجام میشه زمان مورد نیاز به حداقل ممکن میرسه
نقل قول: فیلتر کردن Linq بعد از دریافت اطلاعات
من فایل نگاه کردم ولی موقع اجرا اررور میداد خیلی هم ازش سر در نیوردم ولی تونستم یه ایده ازش بگیرم
به نظرم برنامه تو خیلی شلوغ کردی
ولی در هر صورت ممنون مشکل من حل شد