我有一个win表单应用程序,我们根据众多标准进行过滤。一个是多选下拉列表。这个值是一个整数,我正在让命令工作。
我尝试了下面的内容,但不能在整数上使用包含。只是在这里展示,所以我可以告诉你我想做什么。
private List<int> GetSelectedIntVals()
{
List<int> intVals = new List<int>();
foreach (var item in ddlSearchQueueStage.CheckBoxItems)
{
if (item.Checked == true)
{
intVals.Add(st.GetStageNumberFromText(item.Text));
}
}
return intVals;
}
public void FilterBatch(SearchCriteria searchCriteria)
{
var FilteredBatch = (from t in BatchList select t).ToList();
// This is where having issue
FilteredBatch = FilteredBatch.Where(p => p.Stage.Contains(searchCriteriaQueue.stageVal).ToList();
.
.
.
.
RebuildScreen();
}
提前致谢。我已经看过并尝试过其他一些选项,但却无法开始工作。
答案 0 :(得分:1)
假设searchCriteriaQueue.stageVal
是一个整数集合(因为你说它是一个多选下拉列表),你只需向后调用Contains
:
FilteredBatch = FilteredBatch.Where(p => searchCriteriaQueue.stageVal.Contains(p.Stage)).ToList();