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