Linq基于整数列表

时间:2013-10-30 22:30:49

标签: c# linq

我有一个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();
    }

提前致谢。我已经看过并尝试过其他一些选项,但却无法开始工作。

1 个答案:

答案 0 :(得分:1)

假设searchCriteriaQueue.stageVal是一个整数集合(因为你说它是一个多选下拉列表),你只需向后调用Contains

    FilteredBatch = FilteredBatch.Where(p => searchCriteriaQueue.stageVal.Contains(p.Stage)).ToList();