shahrzad87
دوشنبه 09 آبان 1390, 12:50 عصر
سلام
من یک جستجوی دو مرحله ای توی 2 جدول دارم که جستجوی اول نتیجش یک لیست از ID هست که بعد می خوام بر اساس این لیست توی جدول دوم جستجو کنم و تمام فیلدهاش رو برای نمایش در دیتاگرید بر گردونم، باید شرط where رو چطور بنویسم؟
/// <summary>
/// با گرفتن آی دی یک گروه،آی دی اشخاص عضو یک گروه را می دهد
/// </summary>
/// <param name="grpID"></param>
/// <returns></returns>
public List<decimal?> getPersonsIDOfGroup(decimal grpID)
{
dc_sms =
new dcAjmanSmsDataContext ();
List<decimal?> lst = new List<decimal?>();
var item
=
from items in dc_sms.PersonsBelongsToGroups
where items.GroupId == grpID select new { items.PersonId };
foreach (var i in item)
{
lst.Add(i.PersonId);
}
return lst;
}
/// <summary>
/// با گرفتن آی دی یک گروه، مشخصات اشخاص عضو گروه را می دهد
/// </summary>
/// <param name="grpID"></param>
/// <returns></returns>
public IQueryable getPersonsOfGroupByIDGroup(decimal grpID)
{
dc_sms =
new dcAjmanSmsDataContext();
List<decimal?> lst = new List<decimal?>();
lst = getPersonsIDOfGroup(grpID);
//جستجوی اشخاصی که آی دی آنها در لیست است و برگرداندن تمام مشخصات برای نمایش در دیتاگریدویو
var item = from items in dc_sms.Persons where items.ID = lst select items;
}
من یک جستجوی دو مرحله ای توی 2 جدول دارم که جستجوی اول نتیجش یک لیست از ID هست که بعد می خوام بر اساس این لیست توی جدول دوم جستجو کنم و تمام فیلدهاش رو برای نمایش در دیتاگرید بر گردونم، باید شرط where رو چطور بنویسم؟
/// <summary>
/// با گرفتن آی دی یک گروه،آی دی اشخاص عضو یک گروه را می دهد
/// </summary>
/// <param name="grpID"></param>
/// <returns></returns>
public List<decimal?> getPersonsIDOfGroup(decimal grpID)
{
dc_sms =
new dcAjmanSmsDataContext ();
List<decimal?> lst = new List<decimal?>();
var item
=
from items in dc_sms.PersonsBelongsToGroups
where items.GroupId == grpID select new { items.PersonId };
foreach (var i in item)
{
lst.Add(i.PersonId);
}
return lst;
}
/// <summary>
/// با گرفتن آی دی یک گروه، مشخصات اشخاص عضو گروه را می دهد
/// </summary>
/// <param name="grpID"></param>
/// <returns></returns>
public IQueryable getPersonsOfGroupByIDGroup(decimal grpID)
{
dc_sms =
new dcAjmanSmsDataContext();
List<decimal?> lst = new List<decimal?>();
lst = getPersonsIDOfGroup(grpID);
//جستجوی اشخاصی که آی دی آنها در لیست است و برگرداندن تمام مشخصات برای نمایش در دیتاگریدویو
var item = from items in dc_sms.Persons where items.ID = lst select items;
}