У вас несколько проблем с вашим кодом:
- Вы игнорируете
id
пройдено: представьте, что я звоню List(1234)
, 1234
будет проигнорировано, а также 789
в List(789)
- Вы не зацикливаетесь над
id
, поскольку вы возвращаетесь после цикла 1st
- Вы никогда не достигнете
return View();
кода: вы входите в цикл и возвращаетесь из него.
Полагаю, вы хотите что-то вроде этого:
using System.Linq;
...
public IActionResult List(int id) {
// for given id we collect all corresponding FilialeVM items
var listafiliali = _repoFil
.GetById(id) // items correspond to given id
.Result
.Select(fil => _mapper.Map<FilialeVM>(fil)) // mapped to FilialeVM
.ToList(); // organized as list
// If we have any item in listafiliali, view them, otherwise use default View()
return listafiliali.Any()
? View(listafiliali)
: View();
}
Или, если вы не хотите, чтобы id
передавался, а сканировал id = [0..1000]
диапазон:
public IActionResult List() {
// for id in [0..1000] range we collect all corresponding FilialeVM items
var listafiliali = Enumerable
.Range(0, 1000 + 1)
.SelectMany(id => _repoFil
.GetById(id) // items correspond to given id
.Result
.Select(fil => _mapper.Map<FilialeVM>(fil))) // mapped to FilialeVM
.ToList(); // organized as list
// If we have any item in listafiliali, view them, otherwise use default View()
return listafiliali.Any()
? View(listafiliali)
: View();
}