modification du answer entity manager

API
Damien NORTIER 1 year ago
parent 297560f178
commit 536de02dcb

@ -38,10 +38,19 @@ namespace EntityManagers
return await dbContext.Answers.Where(a => a.Id == id).FirstOrDefaultAsync();
}
public async Task<(int nbPages, IEnumerable<AnswerEntity>? answers)> getAnswers(int nb, int count, AnswerOrderCriteria orderCriteria = AnswerOrderCriteria.ById)
public async Task<(int nbPages, IEnumerable<AnswerEntity>? answers)> getAnswers(int page, int count, AnswerOrderCriteria orderCriteria = AnswerOrderCriteria.ById)
{
int nbEl = getNbElements();
if (nb < 0 || count < 0 || nb > nbEl / count) return await Task.FromResult<(int nbPages, IEnumerable<AnswerEntity>? answers)>((nbEl / count, null));
if (page < 0 || count < 0 || page > nbEl / count)
{
return await Task.FromResult<(
int nbPages,
IEnumerable<AnswerEntity>? answers
)> ((
count == 0 ? -1 : nbEl / count,
null
));
}
var tmp = dbContext.Answers;
switch (orderCriteria)
{
@ -55,7 +64,13 @@ namespace EntityManagers
tmp.OrderBy(a => a.IdQuestion);
break;
}
return await Task.FromResult<(int nbPages, IEnumerable<AnswerEntity>? answers)>((nbEl / count, tmp.Skip((nb - 1) * count).Take(count)));
return await Task.FromResult<(
int nbPages,
IEnumerable<AnswerEntity>? answers
)> ((
nbEl / count,
tmp.Skip((page - 1) * count).Take(count)
));
}
public async Task<IEnumerable<AnswerEntity>?> getAnswersByIdQuestion(uint id)

Loading…
Cancel
Save