通用列表具有条件语句的Foreach循环

时间:2013-09-04 15:16:31

标签: c# list generics foreach conditional-statements

我正在使用foreach循环来获取迭代所有项目的通用列表项,但我希望获得具有条件的某些项目。 我这样做如下:

 foreach (FilesToProcessDataModels item in ListfilesToProcess)
            {
                if (item.IsChecked)
                {
                    //file operations
                }
            }

有没有办法可以在没有if语句的情况下,在foreach循环中迭代 item.IsChecked == true 的数据。

2 个答案:

答案 0 :(得分:4)

您可以使用Linq Where

var checkedItems = ListfilesToProcess.Where(i => i.IsChecked);
foreach (FilesToProcessDataModels item in checkedItems)
{
    // file operations
}

答案 1 :(得分:4)

使用Where

var foo = ListfilesToProcess.Where(i => i.IsChecked);