我有这个rad组合框(又名下拉列表),项目“count”“sum”“max”“min” 我附加到RadListBox控件项,所以它出来像这样“Count(column1)” 在rcListBoxColumns2上。 然后我写这样的代码并得不到结果:
var ddlFunc = from cp in ddlFunctions.Items.ToList() select cp;
var rcLBC = from p in rcListBoxColumns2.Items.ToList() select p;
havingFilters.DataSource = (from p in rcLBC.ToList()
from x in ddlFunc.ToList()
where p.Value.Contains(x.Value)
select new { Value = p.Value, Text = p.Text }).Distinct().ToList();
我可以使用调试器并查看ddlFunc和rcLBC,我注意到rcLBC的值应该“包含”下拉列表值,但我的结果是所有项目都被选中。无法弄清楚为什么contains语句没有过滤它。任何人的想法?
答案 0 :(得分:0)
我假设你试图过滤Value
,所以试试这个:
havingFilters.DataSource = (
from p in rcLBC
where (
from x in ddlFunc
where p.Value.Contains(x.Value)
select x).Any()
select new
{
Value = p.Value,
Text = p.Text
});
答案 1 :(得分:0)
我刚刚解决了它,显然我的ddlFunctions的值为“”< - 空字符串。这导致string.contains函数为任何字符串返回true。