Ejemplo n.º 1
0
        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)));
        }
Ejemplo n.º 2
0
        // 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)));
        }