C# 使用RadComboBox和RadListBox的LINQ语句出现问题
我有一个rad组合框(又名dropdownlist),里面有“count”“sum”“max”“min”项 我将其附加到RadListBox控件项中,结果如下“Count(column1)” 在rcListBoxColumns2上。 然后我像这样编写代码,但没有得到任何结果:C# 使用RadComboBox和RadListBox的LINQ语句出现问题,c#,asp.net,linq,telerik,C#,Asp.net,Linq,Telerik,我有一个rad组合框(又名dropdownlist),里面有“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.T
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的值应该“包含”dropdownlist值,但我的结果是所有项目都被选中。无法找出contains语句未对其进行筛选的原因。任何人有什么想法吗?我假设您正在尝试根据
值进行筛选,所以请尝试以下操作:
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
});
我刚刚解决了这个问题,显然我的DDL函数的值是“”,但不太清楚您想要实现什么。能否向我们展示DDL函数和rcListBoxColumns2的示例值,以及这些输入的预期结果?抱歉,不清楚。我确实提到了DDL函数的值:“COUNT”“SUM”“MAX”“MIN”。当我的rcListBoxColumn2中有一个值时,例如:“COUNT(ColumnName)”或“MAX(ColumnName2)”,我想检查该字符串是否包含来自DDL函数的值,本质上我是在剔除rcListBoxColumn2中附加了函数的项。@user354303:好的,所以您正在尝试执行字符串。contains
,与LINQ包含的
相反。我明白了。我试过这个,我得到了同样的结果,像以前一样把所有的值都取回来。是的,我想这样就可以了。这是它帮助您提供输入和预期输出的具体示例的原因之一。对不起,我不能提供更多的帮助。