public async Task <SocioDetailViewModel> EditSocioAsync(SocioEditInputModel inputModel) { Socio socio = await dbContext.Soci.FindAsync(inputModel.Id); if (socio == null) { logger.LogWarning("Socio {id} non trovato", inputModel.Id); throw new SocioNotFoundException(inputModel.Id); } socio.ChangeTessera(inputModel.Tessera); socio.ChangeNominativo(inputModel.Nominativo); socio.ChangeIndirizzo(inputModel.Indirizzo); socio.ChangeCap(inputModel.Cap); socio.ChangeComune(inputModel.Comune); socio.ChangeProvincia(inputModel.Provincia); socio.ChangeLuogoNascita(inputModel.LuogoNascita); socio.ChangeDataNascita(inputModel.DataNascita); socio.ChangeCodiceFiscale(inputModel.CodiceFiscale); socio.ChangeTelefono(inputModel.Telefono); socio.ChangeEmail(inputModel.Email); socio.ChangeDataTesseramento(inputModel.DataTesseramento); socio.ChangeTrattamentoDati(inputModel.TrattamentoDati); socio.ChangeProfessione(inputModel.Professione); socio.ChangeZona(inputModel.Zona); await dbContext.SaveChangesAsync(); return(socio.ToSocioDetailViewModel()); }
public async Task <IActionResult> Edit(int id) { ViewData["Title"] = applicationPersister.GetTitoloApp(); SocioEditInputModel inputModel = await soci.GetSocioForEditingAsync(id); return(View(inputModel)); }
public async Task <IActionResult> Edit(SocioEditInputModel inputModel) { if (ModelState.IsValid) { SocioDetailViewModel socio = await soci.EditSocioAsync(inputModel); TempData["ConfirmationMessage"] = "I dati sono stati aggiornati con successo"; return(RedirectToAction(nameof(Detail), new { id = inputModel.Id })); } ViewData["Title"] = applicationPersister.GetTitoloApp(); return(View(inputModel)); }
public async Task <SocioEditInputModel> GetSocioForEditingAsync(int id) { IQueryable <SocioEditInputModel> queryLinq = dbContext.Soci .AsNoTracking() .Where(socio => socio.Id == id) .Select(socio => socio.ToSocioEditInputModel()); SocioEditInputModel viewModel = await queryLinq.FirstOrDefaultAsync(); if (viewModel == null) { logger.LogWarning("Socio {id} non trovato", id); throw new SocioNotFoundException(id); } return(viewModel); }