Как запрашивать ввод числа до тех пор, пока оно не будет введено корректно? C#
Ребята, подскажите как решить данную проблему кода. При вводе в переменную цифры, код исправно работает, но если вести букву "р", нажать пробел и так далее, Консоль выводит: "Входная строка имела неверный формат". Такой вопрос, как сделать так, чтобы при вводе буквы или чего-то другого помимо цифры, код переходил к else и снова прогонял его.
Console.WriteLine("Выберите ваш пол: " + "\n 1 -> М." + "\n 2 -> Ж.");
Console.Write("Ваш выбор: ");
int sex = Convert.ToInt32(Console.ReadLine());
bool case2Continue = true;
while (case2Continue == true)
{
if (sex == 1 || sex == 2)
case2Continue = false;
else
{
case2Continue = true;
Console.Write("Неправильный выбор, повторите: ");
sex = Convert.ToInt32(Console.ReadLine());
}
}
Источник: Stack Overflow на русском