[英]linq sub-query table cross reference
我想有条件地从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);
这似乎没有过滤掉投标人表中没有任何条目的工作...我该怎么做?
如果已经没有导航属性,则您与第一种方法有些相似:
jobs = jobs.Where(j => Bidders.Any(b => b.JobKey == j.JobKey));
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.