Как попытаться выполнить повторно, если command.ExecuteNonQuery() не удается
Как попытаться выполнить повторно, если command.ExecuteNonQuery() не удается?
2 ответа
Решение
Ты можешь попробовать
bool executed = false;
while (!executed)
{
try
{
command.ExecuteNonQuery();
executed = true;
}
catch
{
}
}
Вы можете добавить еще несколько условий, таких как таймер или счетчик, но это не очень хорошая идея. Вы, вероятно, должны придумать лучший сценарий восстановления.
Самый простой способ, которым я могу думать:
while(true) {
try {
command.ExecuteNonQuery();
break;
} catch(SqlException ex) { }
}
В любом случае вы должны поместить некоторый дополнительный управляющий код в блок catch, чтобы предотвратить бесконечный цикл и / или зарегистрировать ошибку.