В моем приложении _collection - это список, из которого мне нужно удалить все объекты пользователя , которые не соответствуют критериям .
Однако следующий код получает ошибку недопустимая операция во второй итерации, поскольку сама _collection была изменена:
foreach (User user in _collection)
{
if (!user.IsApproved())
{
_collection.Remove(user);
}
}
Я мог бы создать другую коллекцию List и копировать их туда-сюда, но тогда у меня возникнет проблема не клонированных ссылочных типов и т. Д.
Есть ли способ выполнить вышесказанное более элегантно, чем копировать _collection в другую переменную List?