下面的代码可以成功地遍历List。如何添加where子句,使其仅用于sType ="文件"
的列表项for (int i = 0; i < MyGlobals.ListOfItemsToControl.Count; i++) // Loop through List with for
我想要的伪代码
for (int i = 0; i < MyGlobals.ListOfItemsToControl.Count.Where(y => y.sType == "File"); i++) // Loop through List with for
答案 0 :(得分:5)
使用LINQ获取一个新的过滤列表,该列表仅包含符合您条件的项目:
var filteredList = MyGlobals.ListOfItemsToControl.Where(i => i.sType == "File").ToList();
for (var i = 0; i < filteredList.Count; i++) // Loop through List with for
...
答案 1 :(得分:3)
除了sjkm的答案,如果你没有使用索引,只需使用foreach循环。
foreach(var item in MyGlobals.ListOfItemsToControl.Where(i => i.sType == "File"))
{
// Do something with item.
}