Я хочу использовать несколько функций друг за другом, но если что-то пошло не так в первой функции, другие функции не должны выполняться. В данный момент я использую какое-то время l oop с переключателем. Есть ли способ пропустить целое время / переключить часть с чем-то еще? Может быть, что-то похожее на событие?
while (!ErrorActive && iStep != 3)
{
switch (iStep)
{
case 0:
DoSomething(); // this can trigger ErrorActive
iStep = 1;
break;
case 1:
DoSomething2(); // this can trigger ErrorActive
iStep = 2;
break;
case 2:
DoSomething3(); // this can trigger ErrorActive
iStep = 3;
break;
}
}
функции DoSomething имеют что-то вроде этого:
public void DoSomething()
{
try
{
//calculate something
}
catch
{
ErrorActive = true;
}
}
Есть ли способ пропустить целую часть while / switch и заменить ее чем-то другим? (может быть, как событие?) или я должен всегда держать что-то между каждой функцией, чтобы проверить, все ли в порядке?