12-5 Utilisation de FindByVilleId dans le contrôleur
Il suffit maintenant d'appeler de façon conditionnelle la bonne fonction.
Si un paramètre est présent pour ville
, on appelle FindByVilleId
et sinon on appel GetAll()
comme auparavant.
Snowfall.Web.Mvc/Controllers/EvenementsController.cs
public async Task<IActionResult> Index(int? ville)
{
List<Evenement> evenements;
if(ville.HasValue)
evenements = await _evenementService.FindByVilleId(ville.Value);
else
evenements = await _evenementService.GetAll();
List<Ville> villes = await _villeService.GetAll();
var viewModel = new EvenementsIndexViewModel
{
Villes = villes,
Evenements = evenements
};
return View(viewModel);
}
info
Comme ville
est optionnel, on doit utiliser HasValue
, permettant de vérifier si une valeur est associée ou non.
Ensuite, pour obtenir la valeur, on utilise Value
sur le int
.
Si vous lancez l'application, le filtre devrait fonctionner!
http://localhost:4200
