目前,我使用过foreach
现在,我不想循环。我希望一次显示所有数据。它就像一个清单。例如,我有3行数据,我希望它一次显示所有数据而不循环。我怎样才能做到这一点?
您可以先将它放在临时列表中,然后使用.AddRange
将其一次性添加到主列表中。
List<int> itemIds = itemRelationBO.GetItemRelationItem(item.ItemId);
List<ItemRelationDisplay> temp = new List<ItemRelationDisplay>();
foreach (var id in itemIds)
{
ItemRelation itemRelation = new ItemRelation();
ItemRelationDisplay itemRelationDisplay = new ItemRelationDisplay();
itemRelationDisplay.ItemIdSub = id;
itemRelationDisplay.ItemNameSub = itemRelation.ItemNameSub;
itemRelationDisplay.ItemQuantitySub = 1;
temp.Add(itemRelationDisplay);
}
itemRelationList.AddRange(temp)
if (item.IsMainItem == true)
{
ItemDisplay itemDisplay = new ItemDisplay();
itemDisplay.ItemCode = item.ItemCode;
itemDisplay.ItemName = item.ItemName;
itemDisplay.ItemPrice = simpleItem.ItemPrice;
itemDisplay.Quantity = 1;
itemDisplayList.Add(itemDisplay);
ItemRelationBO itemRelationBO = new ItemRelationBO();
List<int> itemIds = itemRelationBO.GetItemRelationItem(item.ItemId);
itemRelationList.AddRange(itemIds.Select(id =>
{
ItemRelation itemRelation = new ItemRelation();
return new ItemRelationDisplay
{
ItemIdSub = id,
ItemNameSub = itemRelation.ItemNameSub,
ItemQuantitySub = 1
};
}));
}