Linq Group By或Distinct with Join

时间:2015-05-13 20:44:06

标签: c# asp.net-mvc entity-framework

我可能会错误地解决这个问题,但我有一个预订表和一个联系表,其中有一个连接两者的联系表。

我需要让所有与包含给定字符串的电子邮件有相关联系的预订。

换句话说,用户希望通过联系电子邮件搜索预订。

这就是我想出来的。它可以工作,但每次预订都会返回重复的行。我无法弄清楚如何对行进行分组或使用与T-SQL中不同的方法...

std::copy

1 个答案:

答案 0 :(得分:1)

我假设您有导航属性,否则您将开始使用它们:

var bookings = from b in bookings
               where b.bookingscontacts
                      .Any(bc => bc.contact.email == contactemail)
               select b;

这将生成EXISTS查询,因此预订不会重复。