Code:
foreach (var item in myEnumerable.Where(ItemIsNotValidAnymore))
{
myEnumerable.Remove(item);
}
...
bool ItemIsNotValidAnymore(MyEnumerableElement item)
{
...
}
Da braucht man noch nicht einmal mehr Kommentare.
Wenn Du den Inhalt von ItemIsNotValidAnymore noch in die Klammern hinter das Where schreibst:
Code:
foreach (var item in myEnumerable.Where({
...
}))
{
myEnumerable.Remove(item);
}
so dass perfektes C# herauskommt, weiß somit jeder, was dabei abläuft.