Я новичок в разработке .Net и ищу несколько советов.
У меня есть фрагмент кода, который выдает некоторые исключения. Эти исключения выбрасываются, если моя база данных недоступна, например. Я хочу предоставить пользователям возможность повторить выполненный код в случае неудачи.
Вот мой начальный код:
executeRequest();
Что я думаю в стиле C (но все равно работаю в C #):
do
{
try
{
executeRequest();
return;
}
catch (Exception exception)
{
ErrorMessagesUtils.ShowTaskErrorMessage(exception);
}
} while (MessageBox.Show("Failed : Retry ?", "Error",
MessageBoxButtons.YesNo,
MessageBoxIcon.Question) == DialogResult.Yes);
Это работает, но очень неприятно воспроизводить его другими методами. Я хочу использовать с executeRequest , но не только .
Если бы я писал на C, я буду использовать #define ASK_USER_TO_RETRY(funcname) ...code...
. Но в C # я не нашел способа повторно использовать кусок кода таким образом. Некоторые мысли?