var text = Console.ReadLine();
if(double.TryParse(text, out var number)) {
// работаем
}
то что в 'эту игру' (я про навешай потребителю лапши побольше) хотят играть другие ничего не меняет, просто смени место приложение вопросов на другую компанию
var city = await ctx.City.SingleOrDefaultAsync(x => x.CountryId == country.Id);
if (city is not null) // Если город нашёлся
{
// Делаем что-то с этим городом
}
else // Иначе
{
// Ищем альтернативным город
var alternativeCity = await ctx.AlternativeCity.SingleOrDefaultAsync(x => x.CountryId == country.Id);
if (alternativeCity is null) // Если альтернативный город не нашёлся
{
// Кидаем ошибку и ничего дальше не делаем
throw new InvalidOperationException();
}
// Делаем что-то с альтернативным городом
}