при отладке у меня есть условие, в котором Component.Attributes
имеет Count = 3 (я имею в виду список из 3 элементов). И это внутри цикла foreach вот так:
foreach(Attributes atrb in Component.Attributes)
{
switch (Component.Type)
{
case "Combo":
return validateCombo(atrb);
case "List":
return validateList(atrb);
default:
return true;
}
}
return false;
Я заметил, что этот цикл foreach выполняется только для первого члена списка. Может кто-нибудь, пожалуйста, сообщите мне, почему он не выполнялся для других членов списка (я имею в виду счет 2 и 3)? Это связано с возвратом. Как его решить?
Return
- это конец оператора функции. По достижении первого оператора return
вся ваша функция завершается, поэтому цикл заканчивается немедленно.
Обычно вы хотите использовать оператор break
между различными случаями коммутатора, чтобы остановить выполнение до конца определения коммутатора.