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 هم استفاده کردم و نتیجه نگرفتم!
اگر راهی بنظرتون میرسه بفرمایید من مخم داغ کرد!
با تشکر...:لبخند:
شبتون بخیر!
چطوری میشه یه لیست رو با یه مقدار از جدول دقیقا مقایسه کرد؟
مثلا توی خط زیر تمام ستونهای آی دی گرید رو ریختم توی لیست:
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 هم استفاده کردم و نتیجه نگرفتم!
اگر راهی بنظرتون میرسه بفرمایید من مخم داغ کرد!
با تشکر...:لبخند: