public IActionResult Create(VrstaStavke vrstaStavke) { if (ModelState.IsValid) { try { //tražim slijedeći key var query = ctx; int zadnji = query.VrstaStavkes.AsNoTracking().Count(); query = ctx; var query2 = query.VrstaStavkes.AsQueryable(); int Id = query2.OrderBy(d => d.IdVrste).Skip(zadnji - 1).Select(d => d.IdVrste).First() + 1; vrstaStavke.IdVrste = Id; ctx.Add(vrstaStavke); ctx.SaveChanges(); TempData[Constants.Message] = $"Vrsta stavke {vrstaStavke.NazivVrste} uspješno dodana"; TempData[Constants.ErrorOccurred] = false; return(RedirectToAction(nameof(Index))); } catch (Exception exc) { ModelState.AddModelError(string.Empty, exc.CompleteExceptionMessage()); return(View(vrstaStavke)); } } else { return(View(vrstaStavke)); } }
public async Task <IActionResult> Create(VrstaStavkeViewModel model) { VrstaStavke vrstaStavke = new VrstaStavke { IdVrste = model.IdVrste, NazivVrste = model.NazivVrste }; ctx.Add(vrstaStavke); await ctx.SaveChangesAsync(); var addedItem = await Get(vrstaStavke.IdVrste); return(CreatedAtAction(nameof(Get), new { id = vrstaStavke.IdVrste }, addedItem.Value)); }
public async Task <IActionResult> Update(int Id, int page = 1, int sort = 1, bool ascending = true) { try { VrstaStavke vrstaStavke = await ctx.VrstaStavkes .Where(d => d.IdVrste == Id) .FirstOrDefaultAsync(); if (vrstaStavke == null) { return(NotFound($"Ne postoji vrsta stavke s Id: {Id}")); } if (await TryUpdateModelAsync <VrstaStavke>(vrstaStavke, "", d => d.NazivVrste )) { ViewBag.Page = page; ViewBag.Sort = sort; ViewBag.Ascending = ascending; try { await ctx.SaveChangesAsync(); TempData[Constants.Message] = $"Vrsta stavke {Id} uspješno ažurirana"; TempData[Constants.ErrorOccurred] = false; return(RedirectToAction(nameof(Index), new { page = page, sort = sort, ascending = ascending })); } catch (Exception exc) { ModelState.AddModelError(string.Empty, exc.CompleteExceptionMessage()); return(View(vrstaStavke)); } } else { ModelState.AddModelError(string.Empty, "Podatke o vrsti stavke nije moguće povezati s forme"); return(View(vrstaStavke)); } } catch (Exception exc) { TempData[Constants.Message] = exc.CompleteExceptionMessage(); TempData[Constants.ErrorOccurred] = true; return(RedirectToAction(nameof(Edit), new { Id })); } }