Bonjour,
je développe une Web Api avec Entity Framework.
J'ai mon interface :
Mon repository
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 public interface IGenderRepository { IQueryable<Gender> Get(); }
Et mon contrôleur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21 public class EFGenderRepository : IGenderRepository { private ApplicationDbContext _context; public EFGenderRepository(ApplicationDbContext ctx) { _context = ctx; } public IQueryable<Gender> Get() { try { return _context.Genders.AsQueryable(); } catch (Exception ex) { throw ex; } } }
Lorsque je teste ma méthode Get (via swagger) j'obtiens le message d'erreur suivant :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17 [HttpGet] public async Task<IEnumerable<Gender>> Get() { try { var genders = await _genderRepository.Get().ToListAsync(); var gendersResult = _mapper.Map<IEnumerable<Gender>>(genders); return gendersResult; } catch (Exception ex) { _logger.LogError($"Something went wrong inside Get action int GenderController : {ex.Message} "); return null; } }
Le lien renseigné parle de tests."The source IQueryable doesn't implement IDbAsyncEnumerable<Projet.Entities.Class.Gender>. Only sources that implement IDbAsyncEnumerable can be used for Entity Framework asynchronous operations. For more details see http://go.microsoft.com/fwlink/?LinkId=287068."
Je ne comprends pas très bien pourquoi j'ai ce message d'erreur.
Quelqu'un aurait une idée?
Merci pour votre aide
Partager