public async Task <IActionResult> EditDespesaAsync(int id) { var despesa = await service.GetDespesaAsync(id) ?? new Despesa(); var categs = await categoriaService.GetCategoriasAsync(); var categsSelectListItem = new List <SelectListItem>(); foreach (var item in categs) { categsSelectListItem.Add(new SelectListItem { Value = item.Id.ToString(), Text = item.Descricao, Selected = (item.Id == despesa.CategoriaId) }); } var editDespesaViewModel = new EditDespesaViewModel { Id = despesa.Id, Descricao = despesa.Descricao, Valor = despesa.Valor, Categorias = categsSelectListItem }; ViewData["categoria"] = despesa.CategoriaId; return(View(editDespesaViewModel)); }
public async Task <IActionResult> SaveDespesaAsync(EditDespesaViewModel despesaViewModel) { var despesa = new Despesa { Id = despesaViewModel.Id, Descricao = despesaViewModel.Descricao, Valor = despesaViewModel.Valor, CategoriaId = despesaViewModel.CategSelecionada }; if (despesa.Id > 0) { await service.UpdateDespesaAsync(despesa); } else { await service.AddDespesaAsync(despesa); } return(RedirectToAction("Index")); }