یکی از ساده ترین امکانات لذت بخش لینک می تواند چیزی باشد که خواهم گفت.
فرض کنید یک فایل dbml را به درستی به یک Database که دارای جدول دانشجویان است متصل کردیم. حالا یک CheckboxList داریم که شامل سال های 1360 تا 1370 بوده که مربوط به سال تولد دانشجویان است. حالا کاربر چند تا از آیتم ها را انتخاب میکند و دکمه جستجو را میزند.
اگر فرض کنیم کاربر 1360 و 1362 و 1364 را انتخاب کرده باشد. در روش سنتی بهترین روش یافتن نتایج، ارسال چنین Queryی به بانک اطلاعات بود:
SELECT * FROM Students WHERE BirthYear IN (1360, 1362, 1364)
از این بگذریم که این Query را چطور اجرا میکردیم.
و حالا در LINQ این کار را خواهیم کرد:
int[] selectedValues = { 1360, 1362, 1364 };
using (MyDataContext dc = new MyDataContext())
{
dc.Students.Where(s => selectedValues.Contains(s.BirthYear));
}
این دقیقا Query سنتی که در بالا دیدید را می سازد. بدون کم و کاست.