Вам просто нужно изменить эту строку
log logUser = _context.log.SingleOrDefault(m =>
m.name == login.Username && m.password == encryptedPassword);
на
log logUser = await _context.log.SingleOrDefaultAsync(m =>
m.name == login.Username && m.password == encryptedPassword);
// return failure if logUser is null
Это использует async/await
, который будет синхронно выполнять ваш код, но не будет блокировать поток, покаВаш запрос к БД выполняется.
С другой стороны, если вы используете SingleOrDefault()
, тогда вы блокируете поток во время работы с БД, что не является хорошей практикой.