【发布时间】:2017-02-18 00:20:12
【问题描述】:
我有以下代码
var filteredList = posData.Where(x => MyFilter(x, ruleDetail.wheres)).ToList();
其中 MyFilter 被定义为
static bool MyFilter(Dictionary<string,string> dict, List<WhereClause> wheres)
{
if (dict["x"] == "y")
return true;
else
return false;
}
posData 的类型是
List<dictionary<string,string>>
我在 MyFilter 函数中有一个断点,但代码执行永远不会到达那里。我正在寻找 MyFilter 以根据 wheres 参数进行一些自定义分析。这只是代码的一小部分。请帮我弄清楚为什么 MyFilter 没有被调用?
【问题讨论】:
-
postData是Dictionary<string, string>的集合吗? -
顺便说一句,你方法的主体可以替换为:
return dict["x"] == "y"; -
也许
posData是空的?这将阻止MyFilter()被调用。 -
posData 不为空。它是一个 List
> 并且有 Count() > 0 -
@FelipeOriani 是的
标签: c# linq ienumerable