J'ai mis en œuvre OData pour interroger la liste générée par mon API. Mais parfois, la liste est vide et le résultat OData devrait simplement renvoyer un json vide, mais ce n'est pas le cas. Au lieu de cela, il renvoie l'erreur suivante
La valeur doit être supérieure ou égale à 1. Nom du paramètre : valeur La valeur réelle était de 0.
Voici ma méthode de contrôle
// Get states by Id
[HttpGet]
[ActionName("GetStatesByID")]
public ODataResult<DataAccess.Model.State> GetStatesByID(ODataQueryOptions options,int id)
{
var states = this.Repository.GetAllStatesByCountry(id).AsQueryable<DataAccess.Model.State>();
var results = (options.ApplyTo(states) as IQueryable<DataAccess.Model.State>);
long count = states.Count();
return new ODataResult<DataAccess.Model.State>(results, null, count);
}
Je peux mettre le compte à 0 chaque fois que la liste est vide et cela n'entraînera pas d'erreur mais ce n'est vraiment pas une bonne pratique, donc je voulais savoir s'il y a une autre solution pour que ODataResult renvoie un json vide lorsque la liste est vide plutôt que d'entraîner une erreur ?
Gracias