1

我已经使用通用存储库/uow 模式设置了 EF 4.3。

一个典型的方法如下所示:

using (var uow = new UnitOfWork(ConnectionString.PaydayLenders))
{
    var r = new CrudRepo<Tier>(uow.Context);
    return r.Find()
    .Include("CommissionTiers.MatchService.Provider")
    .ToList();
}

如您所见,我还使用导航属性在 fetch 中包含其他表。

在此示例中,一个层有许多 CommissionTiers,CommissionTiers 有一个 MatchService,而 MatchService 有一个提供者。

我想要做的是选择 CommissionTier.Status = 1 和 Provider = 1。有没有办法可以将其合并到此语句/方法中?

4

2 回答 2

2

尝试这个:

Where(t => t.CommissionTiers
            .Any(ct => ct.Status == 1 && ct.MatchService.Provider == 1))

因为您有导航属性,所以不需要在您的 LINQ 语句中进行显式连接。

于 2013-05-29T11:05:23.153 回答
-1

您可以使用 Join 来获得所需的功能。

于 2013-05-29T11:03:04.730 回答