.NET框架中是否有一种方法可以从通用列表类型派生,以便在将该项返回到foreach循环中的调用代码之前可以对该项执行操作?
例如 - 宣言
public class Items : List<Item> {
public override Item ?????()
{
//do something with item
return Item;
}
}
用法
var items = GetItems();
foreach (var item in items)
{
// operation declared in Items class has just been executed.
}
答案 0 :(得分:3)
您可以实现IList
并将您的列表包装在实现中。
覆盖GetEnumerator()
并提供自定义枚举器类,该类对项目产量执行所需的操作。