我需要知道如何使用LINQ在不使用foreach
的情况下实现以下逻辑来获取项目列表。另外,在将项目添加到新列表之后,我需要从item
列表中排除那些匹配的项目。
码
List<StockResult> Stockres = new List<StockResult>();
foreach (var stkitms in item)
{
if (Db.Stk.Any(a => a.INo == stkitms.ItemNum))
{
StockResult ss = new StockResult();
ss.ItemNumber = stkitms.ItemNum;
ss.FileName = stkitms.FileName;
Stockres.Add(ss);
}
}
任何对此的解决方案将不胜感激。
最佳答案
您可以尝试以下一种方法:
List<StockResult> Stockres = item.Where(x=>Db.Stk.Any(a => a.INo == x.ItemNum))
Select(x=> new StockResult()
{
ItemNumber = x.ItemNum,
FileName = x.FileName
}).ToList();