PDA

View Full Version : سوال: جستجو در یک لیست در لینک(با شرط Where)



ashkan1234
یک شنبه 27 بهمن 1392, 22:27 عصر
سلام!
شبتون بخیر!
چطوری میشه یه لیست رو با یه مقدار از جدول دقیقا مقایسه کرد؟
مثلا توی خط زیر تمام ستونهای آی دی گرید رو ریختم توی لیست:
var Id = dgv.SelectedRows.Cast<DataGridViewRow>().Select(c => (int)c.Cells["Id"].Value).ToList();
حالا با این خط میره هر چیزی که مشابه هست رو برمیگردونه:
var Exist = db.Tables.Where(c => Id.Contains(c.Id));
یعنی مثلا اگر بزنم 1 همه اونایی که توشون عدد یک هست رو داخل شرط میاره!
من میخوام شرطم دقیقا اگر با هم برابر بود اجرا بشه،یعنی یه چیزی تو این مایه ها:
var Exist = db.Tables.Where(c => Id==c.Id);
که این امکن پذیر نیست چون نمیشه یه لیست رو برابر با یک مقدار قرار داد!
چون این شرط برای گزارش گیری هست و دوباره یه سلکت دیگه باید براش بنویسم نمیخوام ترجیحا از foreach استفاده کنم!
با Indexof و Equles و CompareTo و Exists هم استفاده کردم و نتیجه نگرفتم!
اگر راهی بنظرتون میرسه بفرمایید من مخم داغ کرد!
با تشکر...:لبخند:

alim1367
چهارشنبه 30 بهمن 1392, 11:37 صبح
سلام من هم چند وقت پیش به این مسئله برخورد کردم ولی راهی پیدا نکردم اون زمان باید دوباره بگردم

Mahmoud.Afrad
پنج شنبه 01 اسفند 1392, 13:14 عصر
کد خودت به نظر درسته. رکوردهایی از جدول رو بدست میاره که در لیست Id باشند.
اگر میتونی با مثال عددی بگو لیست و جدول چه اطلاعاتی دارند و چه خروجی میخواهی.