2012-11-01 61 views
3

我有一個具有不同列的一般結果,包括id列。我也有一個List其中有一套ID's。我想獲得結果,其中List項目(id)匹配Id列值。Lambda表達式,其中列等於列表項

我試着在一個循環中這樣做:

foreach(int Uid in idList) 
{ 
    queryResults = queryResults.Where(security => security.id== Uid); 
} 

但是這給了我在queryResults這是最後的Uid在列表單個記錄。我想要的是,所有Uid的列表中的記錄應該在查詢結果

回答

6

您需要將每件商品的編號與存儲在您的idList中的編號進行匹配。這可以通過聯合對於您queryResult使用的Where -extension來實現與Contains - 方法上idList使用:

var idList = new List<int>{1, 2, 3, 4} // This is your list holding the ids 
var result = queryResult.Where(security => idList.Contains(security.SecuritiesId)); 

這將檢查queryResult的每一項是否其SecuritiesId包含在包含相關ID的列表。