Ramesh p Ответов: 1

Как получить продукты из списка на основе количества и макс.


Привет,
У меня есть список, подобный списку "promoptionproducts".Этот список содержит объекты.

PromoptionProducts


Рекламная Продукция Общественного Класса
{
Общественности давно инт

Общественности давно идентификатор{получить;набор;}

публика долго кол-во{получить;набор;}

цена государственного десятичной{получить;набор;}

Public int max {get;set;}
}
Случай1:

<pre>List<PromoptionProducts> promotionproduct=new List<PromoptionProducts>(new promotionproduct({Id=1,productId=101,qty=4,price=25,max=3 });


Я хочу получить кол-во продуктов из списка на основе max, что означает, что я хочу 3qtyproducts из списка на основе 3.

Вариант 2:

<pre>List<PromoptionProducts> promotionproduct=new List<PromoptionProducts>(new promotionproduct({Id=1,productId=101,qty=2,price=25,max=3 },new promotionproduct({Id=2,productId=102,qty=2,price=35,max=3 });


Я хочу получить кол-во продуктов из списка на основе max, что означает, что я хочу 3 Кол-во продуктов из списка на основе 3.

При использовании LINQ запросов.


Пожалуйста, помогите мне.
Спасибо.

Что я уже пробовал:

I want to get the qty of products from list based on max that means I want 3 qty products from the list based on 3.


I want to get the qty of products from list based on max that means I want 3qtyproducts from the list  based on 3.

1 Ответов

Рейтинг:
1

dnxit

Вы можете сделать что-то вроде приведенного ниже мне пришлось изменить часть вашего кода


public class PromotionProducts
{
	public long Id { get; set; }
	public long ProductId { get; set; }
	public long qty { get; set; }
	public decimal price { get; set; }
	public int max { get; set; }
}


var promotionproduct = new List<PromotionProducts>() { new PromotionProducts() { Id = 1, ProductId = 101, qty = 4, price = 25, max = 3 } };
			var promotionproduct2 = new List<PromotionProducts>() { new PromotionProducts() { Id = 1, ProductId = 101, qty = 2, price = 25, max = 3 }, new PromotionProducts() { Id = 2, ProductId = 102, qty = 2, price = 35, max = 3 } };



promotionproduct = promotionproduct.Where(x => x.max == 3).ToList();
var qty = promotionproduct.Where(x => x.max == 3).Select(x => x.qty).ToList();

promotionproduct2 = (from p in promotionproduct2
		     where p.max > 2 || p.max == 3
			 select p).ToList();


в предложении where вы можете изменить условия в соответствии с вашими потребностями


Ramesh p

На самом деле количество продукта терки больше, чем макс.Я хочу получить максимальное количество продуктов это означает что продукты имеют 4 количества продуктов но мне нужно только 3 количества продуктов но вы фильтруете максимум 3 объекта из списка

dnxit

Да, вы можете изменить пункт where, я дал вам идею. Что-то вроде этого

promotionproduct = промо-продукт.Где(x => x.qty == 3 || x.qty < x.max).Список();