У меня есть этот код:
public async Task Execute()
{
_count = 0;
_total = 2; //I need to update this every time I add a new code block below.
//1st code block
_progressCallback("Downloading Inspections", _count / _total);
//do stuff
_count += 1;
//2nd code block
_progressCallback("Downloading Profiles", _count / _total);
//do stuff
_count += 1;
}
Мне нужно продолжать добавлять больше блоков кода, а это значит, что мне нужно постоянно обновлять _total
.
Я думал о том, чтобы сделать что-то подобное Мне не нужно постоянно обновлять _total
, я могу получить его из числа List<Action>
:
List<Action> functions = new List<Action>();
functions.Add(() => FirstCodeBlock(_count, functions.Count));
Очевидно, что это не сработает, потому что functions.Count
точен только после всех Action
s были добавлены.
Есть ли какой-нибудь способ написания этого кода, чтобы я мог добавлять блоки кода без необходимости обновлять _total
?