+1 امتیاز
سلام

من تو برنامه ای که مینویسم نیاز دارم تا سرچ ترکیبی انجام بدم

مثلا تو یکی از فرم هام 5تا تکست باکس برای جستوجو درنظر گرفتم  که میخوام وقتی هر 5تا تکست باکس رو پرکردم سرچ رو براساس اون 5تا تکست باکس انجام بده و یا اینکه اگر مثلا فقط دوتا از این تکست باکس ها پر شد سرچ براساس همون 2تا  صوزت بگیره یعنی میخوام تمام حالت های جستوجو براش درنظر گرفته بشه.

ممنون میشم اگر لطف بفرمایید کداشو برام به اشتراک بگذارید.
بسته شده

1 پاسخ

+3 امتیاز
 
بهترین پاسخ

سلام ، نمی خواین تمامی شرط های مختلف رو بررسی کنید و برای هرکدوم در Query جداگونه بنویسید ، کافیه کوئری رو به شکل زیر بنویسید ، Linq خودش مدیریت می کنه : 

DataClasses1DataContext context = new DataClasses1DataContext();
IEnumerable<tablePersonel> query = from personel in context.tablePersonels
            where personel.FirstName.Contains(this.textBox1.Text) &&
                    personel.LastName.Contains(this.textBox2.Text)
            select personel;

this.dataGridView2.DataSource = query;

عکس از محیط برنامه ای که طراحی کردم :

میشه لطفا یه توضیحی راجع به کد برنامه بدین؟

منظورتون از IEnumerable و personel که تو personel.lastname نوشتین چیه؟
توسط (195 امتیاز) 1 11 40

IEnumerable مربوط به خروجی دستورات Linq هست . همچنین می تونید از کلمه کلیدی var هم استفاده کنید .
personel هم از نوع کلاس tablePersonel هست . Linq to sql به ازای هر جدول در بانک اطلاعاتی یک کلاس همنام ایجاد می کنه . به ازای هر فیلد در جدول هم یک خصوصیت همنام باهاش در کلاس قرار میده .

آموزش کامل Linq to sql رو می تونید در سایت مطالعه کنید .

توسط (6,145 امتیاز) 5 11 116
کدارو نوشتم برنامه error نداد اما وقتی اجرا میگیرم و سرچ میکنم انجام نمیشه یعنی datagridview تغییری نمیکنه و همون اطلاعات قبلی رو نشون میده..
توسط (195 امتیاز) 1 11 40
همه کدتونو  همراه با یه عکس از ساختار بانکتون بذارین تا راهنماییتون کنم
توسط (6,145 امتیاز) 5 11 116
مشکلم حل شد نام تکست باکس هارو به اشتباه وارد میکردم

خیلی ممنونم از پاسخ مناسبتون.
توسط (195 امتیاز) 1 11 40
سوال جدید

2,337 سوال

2,871 پاسخ

3,725 دیدگاه

3,924 کاربر

دسته بندی ها

...