0

我想有条件地从 tableA 的查询中排除项目,如果该查询的 ID 值未包含在 tableB 中至少一次作为参考值......这样的事情......

初始查询:

var jobs = from j in Jobs select j; // there's more, just keeping it simple...

我已经尝试过这些子查询...

基于条件的可选过滤:

jobs = jobs.Where(j => Bidders.Select(b => b.JobKey == j.JobKey) != null);

或这个:

jobs = jobs.Where(j => Bidders.Select(b => b.JobKey == j.JobKey).Count() > 0);

这似乎没有过滤掉投标人表中没有条目的工作......我应该怎么做???

4

1 回答 1

0

如果已经没有导航属性,那么您与第一种方法有些接近:

jobs = jobs.Where(j => Bidders.Any(b => b.JobKey == j.JobKey));
于 2012-03-02T21:03:48.810 回答