Мне нужно преобразовать этот метод в асинхронный метод.
public User GetUserByID(int id)
{
return _unitofwork.UserRepository.FindByCondition(u => u.Id == id).FirstOrDefault();
}
Так я могу изменить код.
public async Task<User> GetUserByID(int id)
{
return await _unitofwork.UserRepository.FindByCondition(u => u.Id == id).FirstOrDefault();
}
, но .FirstOrDefault()
или .FirstOrDefaultAsync()
не может использоваться там. Мне нужно только вернуть одного пользователя.Кто-нибудь может указать мне правильное направление?
'Task<IEnumerable<User>>' does not contain a definition for 'FirstOrDefault' and no accessible extension method 'FirstOrDefault' accepting a first argument of type 'Task<IEnumerable<User>>' could be found (are you missing a using directive or an assembly reference?) [JobsPortal]
Редактировать - Извините.Моя плохая, незначительная ошибка. Я должен был использовать такой код.
public async Task<User> GetUserByID(int id)
{
return (await _unitofwork.UserRepository.FindByCondition(u => u.Id == id)).FirstOrDefault();
}