У меня есть объект с именем Item:
public class Item
{
public Guid Id { get; set; }
public long Size { get; set; }
}
в List<Item>
Мне нужно запросить этот список и вернуть количество строк, в которых
накопленный размер (свойство Size элемента) не превышает определенного числа (порога).
Затем я могу обработать эти элементы, удалить их из исходного списка и получить следующий
элементы с одинаковым запросом, пока все элементы не будут обработаны.
Пример списка:
Id Size
----------------
1 10
2 13
3 5
4 30
5 10
Скажите, что мой желаемый порог - максимальный размер 25.
Запрос должен вернуть элементы с идентификатором 1 и 2, поскольку их накопленный размер не превышает
25. Затем я удаляю эти два значения. В следующий раз запрос должен вернуть 3 и 5.
Идентификатор 4 никогда не должен возвращаться, так как он превышает 25.
Есть идеи?