Ответ 1
Попробуйте следующее:
CartItem Item = Items.Find(c => (c.ProductID == ProductID) && (c.ProductName == "ABS001"));
Чаще всего мы находим общий список с кодом типа:
CartItem Item = Items.Find(c => c.ProductID == ProductID);
Item.Quantity = Quantity;
Item.Price = Price;
Таким образом, вышеуказанный код находит и обновляет другие данные, но если я хочу найти несколько условий, то как мне написать код?
Я хочу написать код вроде:
CartItem Item = Items.Find(c => c.ProductID == ProductID and c.ProductName == "ABS001");
Пожалуйста, направляйте меня для нескольких условий, когда мы находим общий список.
Попробуйте следующее:
CartItem Item = Items.Find(c => (c.ProductID == ProductID) && (c.ProductName == "ABS001"));
Попробуйте следующее:
Items.Find(c => c.ProductID == ProductID && c.ProductName == "ABS001");
Тело лямбда-выражения - это всего лишь метод. Вы можете использовать в нем все языковые конструкции, как в обычном методе.
Лично я предпочитаю
Items.Find(item => item.ProductId == ProductID && item.ProductName.Equals("ABS001"));
Использовать && вместо и
var result = Items.Find(item => item.ProductId == ProductID && item.ProductName == "ABS001");