Я хочу найти и вернуть первое CartLine
, которое соответствует продукту в Cart
с помощью метода FindProductInCartLines(int productId)
.Если вхождение не может быть найдено, верните null
.
Однако компилятор выдает ошибку
Невозможно неявно преобразовать тип: CartLine в Product
с номером строки FirstOrDefault()
.
Я настоящий новичок в отношении лямбда-функций и делегатов.Я думал, что это уже разыменовано с line.Product.Id
, но, очевидно, у меня какое-то недопонимание.
Я попытался использовать ответ JaredPar от: Создать IEnumerable .Find () НоЯ не вижу разницы между моим кодом и его.
public class CartLine
{
public int OrderLineId { get; set; }
public Product Product { get; set; }
public int Quantity { get; set; }
}
public IEnumerable<CartLine> Lines => GetCartLineList();
private List<CartLine> GetCartLineList()
{
return new List<CartLine>();
}
public Product FindProductInCartLines(int productId)
{
return Lines.FirstOrDefault(line => line.Product.Id == productId);
}