public async Task <IActionResult> Upsert(TrailVm obj) { if (ModelState.IsValid) { if (obj.Trail.Id == 0) { await _trailRepository.CreateAsync(SD.TrailAPIPath, obj.Trail); } else { await _trailRepository.UpdateAsync(SD.TrailAPIPath + obj.Trail.Id, obj.Trail); } return(RedirectToAction(nameof(Index))); } IEnumerable <NationalPark> npList = await _nationalRepository.GetAllAsync(SD.NationalParkAPIPath); TrailVm objVm = new TrailVm() { NationaParkList = npList.Select(i => new SelectListItem { Text = i.Name, Value = i.Id.ToString() }), Trail = new Trail() }; return(View(obj)); }
public async Task <IActionResult> Upsert(int?id) { IEnumerable <NationalPark> npList = await _nationalRepository.GetAllAsync(SD.NationalParkAPIPath); TrailVm objVm = new TrailVm() { NationaParkList = npList.Select(i => new SelectListItem { Text = i.Name, Value = i.Id.ToString() }), Trail = new Trail() }; if (id is null) { return(View(objVm)); } objVm.Trail = await _trailRepository.GetAsync(SD.TrailAPIPath, id.GetValueOrDefault()); if (objVm.Trail is null) { return(NotFound()); } return(View(objVm)); }