如何组合两个列表以显示所需的结果?

时间:2014-11-17 10:23:26

标签: c# linq linq-to-sql

我有两个相同类型的列表。我上传了列表中包含的图片;第三张图片展示了我需要的数据。

1 个答案:

答案 0 :(得分:1)

我不确定这是否是最佳方法,但请尝试使用此方法: -

var stocksCount = items.GroupBy(x => x.ItemID)
                                 .Select(x => new { ItemID = x.Key, ItemCount = x.Count() }).ToList();

var result = from item in items
                             join stock in stocks
                             on item.ItemID equals stock.ItemID
                             select new
                             {
                                 item.ItemID,
                                 item.ItemName,
                                 item.ProcessId,
                                 item.ReqQTY,
                                 AllocatedStock = (stock.Stock / stocksCount.First(x => x.ItemID == item.ItemID).ItemCount)
                             };

完成小提琴Here