1

linQ to SQL の「結合」とは正反対のアクションはありますか? クエリの内部結合制約を満たさない結果だけを表示したい。1つのクエリでそれをやりたい。使用例を次に示します ( http://img165.imageshack.us/img165/4940/liststj3.jpg )。

4

3 に答える 3

1

ファルヴァレスの役割:

Roles.Where(r => r.Users.Any(u => u.Name == "falvarez"));

ファルヴァレスにはない役割

Roles.Where(r => !r.Users.Any(u => u.Name == "falvarez"));

falvarez がその役割にいるかどうかを知るオブジェクトに各役割を射影する

Roles.Select(r => new
  {
    FalvarezInRole = r.Users.Any(u => u.Name == "falvarez"),
    Role = r
  });

ロール オブジェクトに users プロパティがない場合は、r.Users の代わりにロールでユーザーをフィルター処理するクエリに置き換えます。

于 2009-01-11T02:48:38.530 に答える
1

Bilal Haidar は、左外部結合を行う方法について説明しています。この戦略を使用し、where 条件を追加して、右側のオブジェクトが null である場所を確認します。

于 2009-01-11T01:35:19.597 に答える
0

ここでZipをチェックしてください:

http://www.codeplex.com/nexttension

編集:「where !Collection.Contains(s.ID)」を実行する方が良いかもしれません...

于 2009-01-11T01:32:43.613 に答える