请仔细检查Part1。变量“singleItem”包含每个Ids循环期间的项目。但我的目标是将此“singleItem”变量转换为项目列表。所以我可以在Part2
这样的另一种方法中使用这个“singleItem”第1部分:
foreach (int Id in Ids)
{
var singleItem = ctx.SingleScannedItems.FirstOrDefault(x => x.SingleScannedItemId == Id);
}
2部分:
public string MyMethod(List<singleItem> items)
{
//do something with items
}
答案 0 :(得分:1)
您可以使用Contains
方法查询SingleScannedItemId
属性值与Ids
集合中的值匹配的所有项目。
var filteredItems = ctx.SingleScannedItems
.Where(x => Ids.Contains(x.SingleScannedItemId)).ToList();
您现在不需要循环,因为您要查询所需的所有项目。
变量filteredItems
将是SingleScannedItem
的列表。您可以将其传递给接受集合的方法。
答案 1 :(得分:0)
您不需要循环,检查 Ids
列表,以下内容可行。
List<singleItem> items = ctx.SingleScannedItems
.Where(x => Ids.Contains(x.SingleScannedItemId).ToList();
MyMethod(items);