1

私のコレクションはこんな感じ

ここに画像の説明を入力

PickのSeqNoがDeliver Statusよりも大きい注文番号をすべて取得する必要があります。ビジネス ルールでは、これらの操作は SeqNo に基づいて行われ、集荷前に注文番号が配信されることはありません。

与えられた例では、集荷前に配送されるため、注文番号 2 を取得する必要があります。ありがとう

4

1 に答える 1

5

このようなものが必要なようですね - 読みやすくするためにクエリの部分を分けました:

var pickups = orders.Where(order => order.Status == Status.Pick);
var deliveries = orders.Where(order => order.Status == order.Deliver);
var query = from pickup in pickups
            join delivery in deliveries on pickup.OrderId equals delivery.OrderId
            where pickup.SeqNo > delivery.SeqNo
            select pickup.OrderId;
于 2012-04-19T06:41:02.140 に答える