การสร้างเงื่อนไขแบบหลายตัวแปรในการค้นหาข้อมูลผ่าน Linq เพื่อให้เห็นภาพชัดเจน จะยกตัวอย่างโดย กำหนดเงื่อนไข 3 ตัวแปร ดังนี้
- ตัวแปร “ชื่อ/นามสกุล/เลขประจำตัวประชาชน”
โดยใช้ control TextBox ที่ชื่อ ID=”txtSearch”
- ตัวแปร “โครงการรับ” โดยใช้ control DropDownList ที่ชื่อ ID=”ddProject”
- ตัวแปร “สถานะการตรวจเอกสาร”
โดยใช้ control DropDownList ที่ชื่อ ID=”ddStatus”
จากนั้นเราสร้าง Entity ยกตัวอย่างเป็น UploadEntities ซึ่งในที่นี้ สร้าง DbSet ที่เชื่อมต่อฝั่งฐานข้อมูลยกตัวอย่างเป็น V_REGISTRATION_UPLOAD ผ่าน Entity Framework 4.5 จากนั้นใช้ LINQ ในการเขียนเงื่อนไข ยกตัวอย่างตามโค้ดด้านล่าง
project = ddProject.SelectedValue;
status = ddStatus.SelectedValue;
search = txtSearch.Text.Trim();
outList = ue.V_REGISTRATION_UPLOAD
.Where(w => (w.STUD_FNAME.Contains(search) || w.STUD_LNAME.Contains(search) || w.CITIZEN_ID.Contains(search)) || string.IsNullOrEmpty(search))
.Where(x => x.PROJECT_ID == project || string.IsNullOrEmpty(project))
.Where(y => y.APPROVED_STATUS == status || string.IsNullOrEmpty(status)) .ToList();
gvUploadedList.DataSource = outList;
gvUploadedList.DataBind();