public async Task <IActionResult> PutBudget(int id, ApiBudget budget) { if (id != budget.BudgetId) { return(BadRequest("Budget does not exist.")); } var resource = new CoreBudget { BudgetId = budget.BudgetId, TotalAmtBills = budget.TotalAmtBills, User = (await _userRepo.GetUserById(budget.UserId)) }; try { await _repo.UpdateBudgetAsync(resource); } catch (DbUpdateConcurrencyException) { if (!await _repo.BudgetExistAsync(id)) { return(NotFound("Budget not found.")); } else { throw; } } return(Ok("Budget updated!")); }