public async Task <IActionResult> Edit(long id, [FromForm] Medication medication) { if (!IsLoggedIn()) { return(RedirectToPage("/Account/Login")); } Medication preSaveMedication = await context.Medications.AsNoTracking().Include(m => m.Infant).FirstOrDefaultAsync(m => m.MedicationId == id); if (!IsMedicationOwner(preSaveMedication)) { return(RedirectToPage("/Error/Error404")); } Infant infant = preSaveMedication.Infant; if (ModelState.IsValid) { context.Medications.Update(medication); await context.SaveChangesAsync(); return(RedirectToAction("Index", "Dashboard", new { id = medication.InfantId })); } return(View("MedicationEditor", MedicationViewModelFactory.Edit(medication, infant))); }
// HTTP Get public async Task <IActionResult> Edit(long id) { if (!IsLoggedIn()) { return(RedirectToPage("/Account/Login")); } Medication medication = await context.Medications.Include(m => m.Infant).FirstOrDefaultAsync(m => m.MedicationId == id); if (!IsMedicationOwner(medication)) { return(RedirectToPage("/Error/Error404")); } return(View("MedicationEditor", MedicationViewModelFactory.Edit(medication, medication.Infant))); }