PDA

View Full Version : مبتدی: انجام جستجو توسط شناسه های موجود در ArrayList



mina68
چهارشنبه 24 اسفند 1390, 08:57 صبح
خدمت دوستان و اساتید محترم سلام عرض می کنم
فرض کنید یک arraylist داریم که توش به عنوان مثال از کد 1 تا 50 نگه داری شده و یک Table داریم که فیلدی به نام code داره حالا می خوام تمام رکورد هایی از table رو select کنم که فیلد کدش یکی از اعداد تو Arraylist باشه به عبارت دیگه تو Arraylist موجود باشه!
چطور با دستورات Linq می تونم این کار رو انجام بدم؟:متفکر:

mehdi.mousavi
پنج شنبه 25 اسفند 1390, 15:28 عصر
خدمت دوستان و اساتید محترم سلام عرض می کنم فرض کنید یک arraylist داریم که توش به عنوان مثال از کد 1 تا 50 نگه داری شده و یک Table داریم که فیلدی به نام code داره حالا می خوام تمام رکورد هایی از table رو select کنم که فیلد کدش یکی از اعداد تو Arraylist باشه به عبارت دیگه تو Arraylist موجود باشه! چطور با دستورات Linq می تونم این کار رو انجام بدم؟:متفکر:

سلام.
شما به دلیلی که قبلا در این پست (http://barnamenevis.org/showthread.php?315769-%D8%AA%D9%88%D9%84%DB%8C%D8%AF-%DB%8C%DA%A9-%D8%A2%D8%B1%D8%A7%DB%8C%D9%87-%D8%A8%D8%A7-%D8%AA%D8%B9%D8%AF%D8%A7%D8%AF-%D8%B9%D9%86%D8%A7%D8%B5%D8%B1-%D9%86%D8%A7-%D9%85%D8%AD%D8%AF%D9%88%D8%AF&p=1385942&viewfull=1#post1385942) توضیح داده ام، هرگز نباید از ArrayList استفاده کنید. جای استفاده از ArrayList، از Generic List ها استفاده کنید:

List<int> ids = new List<int>() { 3, 7, 20, 34 };

حالا، با فرض اینکه id های مورد نظر بشکل فوق تعریف شده باشه، میتونید در LINQ to Entity بدین شکل عمل کنید:

using (MyEntities context = new MyEntities())
{
List<MyTable> lst = context.MyTable.Where(tbl => ids.Contains(tbl.Id)).ToList();
}


موفق باشید.