У меня есть простой набор массивов, вроде этого .. структура сокращена для краткости и тому подобное. По сути это список тождеств с дополнительным полем (своего рода словарь).
[
{
"Id" : 1,
"Requirement" : {
"Value" : "2", "Name" : "Orders"
}
},
{
"Id" : 2,
"Requirement" : {
"Value" : "4", "Name" : "Orders"
}
},
{
"Id" : 3,
"Requirement" : {
"Value" : "6", "Name" : "Orders"
}
},
{
"Id" : 4,
"Requirement" : {
"Value" : "8", "Name" : "Orders"
}
},
]
Мне нужно постоянно проверять другое значение в этом массиве и извлекать элементы, которые удовлетворяют (например, «пользователь» имеет произвольное значение Orders
, которое является целым числом. Каждый раз, когда Orders
обновляется Я хочу получить все элементы из массива, где Orders
больше или равно значению требования, но без извлечения значений, которые у них уже есть)
Итак, это будет работать следующим образом ...
User
имеет 1 Order
. (Ничего не произошло)
User
имеет 2 Order
. (Идентификатор 1 извлекается при выполнении операции обновления пользователя)
User
затем достигает 4 Order
. (Идентификатор 2 выдвинут, но идентификатор 1 уже существует, поэтому он пропускается)
Есть ли упрощенный способ добиться этого с помощью запроса LINQ? Я не могу позволить себе роскошь хранить «последнее проверенное» значение. Структура данных не та, которую я могу изменить на данный момент.