У меня есть подобная конструкция (но намного сложнее):
var list = new List<string>();
// .. populate list ..
foreach(var item in list)
{
DoFunction(list);
}
public void DoFunction(List<string> list)
{
if(someCondition == true)
{
// .. modify list in here ..
}
}
Теперь я понимаю, что невозможно отредактировать коллекцию, которую вы переуступаете, но как вы изящно выпрыгиваете из цикла, если вам нужно отредактировать список (без инструкции try catch
)? Есть ли способ узнать, был ли отредактирован список? Вы можете редактировать список и быстро break;
, прежде чем он заметит?