1. ホーム
  2. c#

[解決済み] LinqでIdのリストに基づいて複数のレコードを選択する

2022-04-27 12:48:59

質問

のIDを含むリストがあります。 UserProfile テーブルを使用します。どのようにすれば、すべての UserProfiles で取得した ID のリストに基づいて var を使って LINQ ?

var idList = new int[1, 2, 3, 4, 5];
var userProfiles = _dataContext.UserProfile.Where(......);

ここで行き詰まりました。forループなどを使えばできるのですが。しかし、私はむしろこれを LINQ .

解決方法は?

を使用することができます。 Contains() を使用します。 を本当に作ろうとすると、少し後ろ向きな感じがするでしょう。 IN 節がありますが、これで大丈夫でしょう。

var userProfiles = _dataContext.UserProfile
                               .Where(t => idList.Contains(t.Id));

また、それぞれの UserProfile レコードは int Id フィールドがあります。そうでない場合は、適宜調整する必要があります。