c#でlinqを使用してdbをクエリし、IDのリストまたは配列に対応するすべてのオブジェクトを取得してリストに入れる方法を理解するのに問題があります。例えば:
アイテムの表があります。パス配列またはリストにIDが含まれるすべてのアイテムを取得するメソッドを作成したいと思います。私はそれをグーグルで検索しましたが、リストまたは配列を使用してクエリするのではなく、リストまたは配列に対してクエリを実行したいだけだと常に想定しています。
前もって感謝します。
c#でlinqを使用してdbをクエリし、IDのリストまたは配列に対応するすべてのオブジェクトを取得してリストに入れる方法を理解するのに問題があります。例えば:
アイテムの表があります。パス配列またはリストにIDが含まれるすべてのアイテムを取得するメソッドを作成したいと思います。私はそれをグーグルで検索しましたが、リストまたは配列を使用してクエリするのではなく、リストまたは配列に対してクエリを実行したいだけだと常に想定しています。
前もって感謝します。
次のようなものが必要なようです。
var query = items.Where(item => validIds.Contains(item.Id));
これがすべてローカル(つまり、インプロセス、LINQ to Objects)であり、有効なIDが多数ある場合は、おそらくを作成する必要があることに注意してくださいHashSet<T>
。
または、もちろん、参加することもできます。
var query = from id in validIds
join item in items on id equals item.Id
select item;
(これの例はWebやStack Overflowにもたくさんありますが、使用するすべての用語が一般的であるため、見つけるのは簡単ではないことを理解できます。)