.NET 4.x Слить совпадающие элементы в разных коллекциях - C#
Формулировка задачи:
Листинг программы
- public class SalesOrder
- {
- public string Name { get; set; }
- public double Price { get; set; }
- public int Quantity { get; set; }
- public SalesOrder(string Name, double Price, int Quantity)
- {
- this.Name = Name;
- this.Price = Price;
- this.Quantity = Quantity;
- }
- }
- //...
- List<SalesOrder> Orders1 = new List<SalesOrder>()
- {
- new SalesOrder("Ballon", 2.54, 1),
- };
- //..
- List<SalesOrder> Orders2 = new List<SalesOrder>()
- {
- new SalesOrder("Ballon", 2.54, 21),
- new SalesOrder("Ball", 4.32, 2)
- };
"Ballon", 2.54, 22
"Ball", 4.32, 2
Решение задачи: «.NET 4.x Слить совпадающие элементы в разных коллекциях»
textual
Листинг программы
- List<SalesOrder> Orders3 = Orders1.Union(Orders2)
- .GroupBy(order => new { order.Name, order.Price })
- .Select(group => {
- SalesOrder order = group.First();
- order.Quantity += group.Skip(1).Sum(o => o.Quantity);
- return order;
- }).ToList();
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д