У меня есть две коллекции:объединить две коллекции и просуммировать поля для дублированных элементов
public interface ISomeNeededInterface
{
string Name { get; set; }
Guid Guid { get; set; }
}
public class Order : ISomeNeededInterface
{
public string Name { get; set; }
public Guid Guid { get; set; }
}
public class SalesOrder
{
public string Name { get { return Item.Name;} }
public double Price { get; set; }
public int Quantity { get; set; }
private ISomeNeededInterface Item { get; private set; }
public SalesOrder(ISomeNeededInterface _item)
{
Item = _item;
Price = _item.Pricce;
Quantity = _item.Quantity;
}
}
List<SalesOrder> Orders1 = new List<SalesOrder>()
{
new SalesOrder(new Order {"Ballon1", Guid.NewGuid();}, 2.54, 1),
new SalesOrder(new Order {"Ballon2", Guid.NewGuid();}, 2.54, 1),
};
List<SalesOrder> Orders2 = new List<SalesOrder>()
{
new SalesOrder(new Order {"Ballon1", Guid.NewGuid();}, 2.54, 2),
new SalesOrder(new Order {"Ball", Guid.NewGuid();}, 4.52, 1)
};
Как объединить две коллекции в одну, а также объединить эти элементы, которые совпали «Name» поля? В то же время для элементов объединенные имена должны суммировать поле «Количество». На конце должно быть
List<SalesOrder> SummOrders = {"Ballon1", 2.54, 3, SOME_Item; "Ballon2", 2.54, 1, SOME_Item ; "Ball", 4.52, 1, SOME_Item }
Отредактировано: Вам нужно упростить этот вопрос? Хорошо, есть более реальный «отредактированный»
Вы что-то пробовали? Какие результаты вы получили? Мы здесь не готовы делать свою работу, вам нужно попробовать самостоятельно, прежде чем задавать – Phate01
Что произойдет, когда цена не будет соответствовать? Вы пробовали GroupBy? –
Я сделал это: найдите совпадение в двух коллекциях по определенным свойствам. Создайте их коллекцию и суммируйте свои поля. Из этих двух коллекций (в сообщении выше) я удаляю элементы дубликата коллекции. Объедините все три коллекции. Но я думаю, что это тоже ... неправильно))) – streamdown