2011-04-19 28 views
0

我有一種情況,我需要通過循環一個對象循環來填充一個列表對象,檢查一個條件,並且如果條件滿足,將該項添加到我的列表中。目前我無法找到添加到列表所需的語法示例,而不是每次循環迭代到下一個項目時清除它並重新填充它。有人可以幫忙嗎?LINQ添加到循環中的列表對象

List<ProfileRightsJSON> prf = new List<ProfileRightsJSON>(); 

try 
{ 
    for (int i = 0; i < lstProfiles.Count; i++) 
    { 
     prf = (from p in _database.tblProfileRights 
       where p.fkProfileID == 
       lstProfiles[i].ProfileID 
       select new ProfileRightsJSON 
       { 
        FunctionID = p.fkFunctionID, 
        UserTypeID = p.fkUserTypeID, 
        RecursiveRights = p.RecursiveRights 
       }).ToList(); 
    } 

回答

2

看起來你真的是這樣的:

var profileIds = lstProfiles.Select(x => x.ProfileID).ToList(); 

var prf = (from p in _database.tblProfileRights 
      where profileIds.Contains(p.fkProfileID) 
      select new ProfileRightsJSON 
      { 
       FunctionID = p.fkFunctionID, 
       UserTypeID = p.fkUserTypeID, 
       RecursiveRights = p.RecursiveRights 
      }).ToList(); 
相關問題