var results = _db.CatSchemas.FirstOrDefault(s => s.TypeName == "Programs")
.Categories.Where(c => c.FilterValToCatMaps.Where
(fm => fm.FilterValue.Value == age && fm.FilterValue.Value == ProgType).Count() > 0)
.Select(c => c.Category1);
如果我删除&& fm.FilterValue.Value == ProgType查询工作,但当然只返回仅过滤的结果age。
Categories我只需要选择FilterValToCatMaps与FilterValue.Value参数age和ProgType. FilterValues只能包含一个值,并且所有相关的FilterValToCatMaps和各自FilterValues 的都应该出现在所需的类别中。
我假设的(fm => fm.FilterValue.Value == age && fm.FilterValue.Value == ProgType)语句尝试检查两个参数值是否相同 FilterValToCatMap.FilterValue,而不检查FilterValToCatMap.FilterValue与类别相关的其他参数值是否包含下一个参数值。
FilterValToCatMaps - 表格
行号 | 筛选值 ID | 猫号
FilterValues - 表
行号 | 价值| 显示名称 | 过滤器ID