2017-06-20 12 views
0

複数の条件に参加しようとしています。問題は、それが「等しい」と「等しくない」のミックスであることです。このprevious answerは、 'equals'に参加したい場合にのみ機能します。Linq:複数の条件に参加する

from p1 in context.Set<PersonList>() 
join p2 in context.Set<PersonList>() 
on p1.Email equals p2.Email && p1.PersonID != p2.PersonID 
+0

あなたはどのように試みているものをいくつかのサンプルコードとを提供するでしょうか? – NetMage

+0

編集:例を追加しました。 – Wouter

答えて

0

だけで余分な条件をキャプチャするためにwhereを使用します。

from p1 in context.Set<PersonList>() 
join p2 in context.Set<PersonList>() 
on p1.Email equals p2.Email into p2j 
from p2 in p2j.DefaultIfEmpty() 
where p2 != null && p1.PersonID != p2.PersonID 
+0

Trueですが、外部結合を行うことはできません。 – Wouter

+0

あなたの例は外部結合ではありません。左または右外部結合をしますか? – NetMage

+0

左外部結合。 – Wouter