0

私は2つのテーブルを持っています。1 つは、ユーザー ID と userSelection (別のテーブルへの外部キー) を保持するユーザー テーブルで、どちらも主キーであるため、ユーザーの複数の行です。

2 番目のテーブルには、プライマリ ID が userSelection である列が保持されます。

2 番目のテーブルから userId が持つすべての userSelection 行を取得したいと考えています。私もlinqラムダ式を使いたいです。

SQL jsut で動作していますが、C# で使用するために変換できません。

Select * From column 
where colID in (
                 select colId from users 
                 where userID = 'someUser')

ありがとう

4

2 に答える 2

0

Entity Framework を使用していると仮定すると、実際に探しているのは内部結合です。次のようになります。

from c in context.Column
join u in context.Users on c.ColId equals u.ColId
where u.UserId = 'SomeUser'
select c;

(構文に何かが欠けている可能性があります)のようなラムダとして(ここにはwhere句はありませんが、簡単に追加できます)

context.Column.Join( context.Users, u => u.ColId, c => c.ColId).Select
于 2014-08-21T19:16:07.230 に答える