Проверка подзапроса для следующих элементов - PullRequest
0 голосов
/ 01 мая 2020

В настоящее время я работаю над системой безопасности базы данных, и я должен убедиться, что в следующие две минуты в этой базе данных нет другой записи, равной true. Но каким-то образом я всегда получаю исключение System.NotSupportedException.

Мой код

public IQueryable<AuthorizationAttempt> GetSuspiciousActivity(
    DateTime from, 
    DateTime to)
{
    return GetActivity(from, to).Where(e1 => 
        e1.Result == false 
        && !GetActivity(
                e1.AttemptDate,
                e1.AttemptDate.AddMinutes(2d)
            ).Any(e2 => e2.Result == true));
}

Ошибка

System.NotSupportedException: «LINQ to Entities не распознает метод» System.DateTime AddMinutes (Double) ', и этот метод нельзя преобразовать в выражение хранилища. " Большое спасибо

1 Ответ

0 голосов
/ 03 мая 2020

Вы не можете использовать какие-либо вспомогательные методы внутри вашего запроса LINQ. Вместо этого используйте DbFunctions.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...