public async Task Init() { if (GradoviList.Count == 0)//u prvom slucaju odnosno kada nista nije odabrano...ako je nesto odabrano ovo preskacemo { var listgrad = await _apiServiceGradovi.Get <IEnumerable <Grad> >(null); foreach (var grad in listgrad) { GradoviList.Add(grad); } } if (SelectedGrad != null)//dolazimo ovdje kada korisnik odabere nesto u dropdown listi { StadioniSearchRequest searchRequest = new StadioniSearchRequest { GradID = SelectedGrad.GradID//uzimamo id i saljemo na api }; var list = await _apiServiceStadioni.Get <IEnumerable <Stadion> >(searchRequest); StadioniList.Clear(); foreach (var stadion in list) { StadioniList.Add(stadion); } } }
public override List <Stadion> Get(StadioniSearchRequest search) { var q = _context.Set <Database.Stadioni>().AsQueryable(); if (!string.IsNullOrWhiteSpace(search?.Naziv) && search?.GradID.HasValue == true) { q = q.Where(s => s.Naziv.Equals(search.Naziv) && s.GradID == search.GradID); } else { if (search?.DrzavaID.HasValue == true) { q = q.Include(s => s.Grad).Where(s => s.Grad.DrzavaID == search.DrzavaID); } if (!string.IsNullOrWhiteSpace(search?.Naziv)) { q = q.Where(s => s.Naziv.StartsWith(search.Naziv)); } if (search?.GradID.HasValue == true) { q = q.Where(s => (s.GradID == search.GradID)); } } var list = q.ToList(); return(_mapper.Map <List <Stadion> >(list)); }