我有一个表问题与许多一对多使用LINQ到实体查询
应用
ApplicationID,
NAme
ApplicationSteps
AplicationStepID,
AplicationID,
StepID
ApplicationStepCriterias
ApplicationStepID,
CriteriaID
所以我有一个SelectedCriteriaID
- 用户从下拉列表中选择一个标准,他希望所有有这个SelectedCriteriaID
在ApplicationStepCriterias
我试图
var ds = context.Applications
.Where(a => a.ApplicationSteps
.Select(x=>x.ApplicationStepCriterias
.Select(t=>t.CriteriaId))
.Contains(SelectesdCriteria));
但作为表的应用我有IEnumerable<IEnumerable<int>>
我不能使用Contains 只是我得到了每个ApplicationStep
(也是一个序列)的所有CriteriaId
的列表。只是我想不出如何在一个列表中获得所有的CriteriId
s。
'。凡(等等).ToList()。包含'或者只是把你的SelectesdCriteria放在哪里。 'where(x => x.ApplicationStepCriterias.Select(t => t.CriteriaId)&SelectesdCriteria)' – teynon
'context.Applications.Where(a => a.ApplicationSteps.Any(as => as.ApplicationStepCriterias.Any(asc => asc.CriteriaID == SelectedCriteriaID)))' –