У меня есть проблема, которую мне удалось решить с помощью итерации (показано), но я думаю, что должен быть способ сделать запрос к базе данных и получить тот же результат?
short id;
if (someBoolean)
{
id = 99;
while (id > 0)
{
if (!db.MY_TABLEs.Any(x => x.ID == id))
break;
id--;
}
}
else
{
id = 1;
while (id < 100)
{
if (!db.MY_TABLEs.Any(x => x.ID == id))
break;
id++;
}
}
В основном у меня есть таблица, полная целых чисел, которая начинается с 0 и заканчивается на 100. В данных где-то существует пробел, может быть 24-58 или 35-93 и т. д. c. На основе значения boolean
мне нужно определить либо начало, либо конец разрыва.
Пример данных
{ 0, 1, 2, 98, 99, 100 }
// Start of gap, returns 3
// End of gap, returns 97