public async Task <IActionResult> Create([Bind("ManufacturingAreaId,Name,ReportLabel,SmeName,SmeEmailAddress,MgrName,MgrEmailAddress,ReplyToEmailAddress")] ManufacturingArea manufacturingArea) { Logger.LogTrace("ManufacturingAreas/Create[Post] called"); if (ModelState.IsValid) { try { DatabaseContext.Add(manufacturingArea); await DatabaseContext.SaveChangesAsync(); TempData["Message"] = "Area has been added."; Logger.LogInformation("{user} added Manufacturing Area[{name}]", UserName, manufacturingArea.Name); return(RedirectToAction(nameof(Index))); } catch (SqlException ex) { string message = $"Cannot add area because of a database error: {ex.Message}"; TempData["Error"] = message; Logger.LogError(message); } catch (Exception ex) { string message = $"Cannot add area because of a general error: {ex.Message}"; TempData["Error"] = message; Logger.LogError(message); } } return(View(manufacturingArea)); }
public async Task <IActionResult> Edit(int id, [Bind("ManufacturingAreaId,Name,ReportLabel,SmeName,SmeEmailAddress,MgrName,MgrEmailAddress,ReplyToEmailAddress,T3GroupId")] ManufacturingArea manufacturingArea) { Logger.LogTrace("ManufacturingAreas/Edit[POST] called with [{id}]", id); if (id != manufacturingArea.ManufacturingAreaId) { return(NotFound()); } if (ModelState.IsValid) { try { DatabaseContext.Update(manufacturingArea); await DatabaseContext.SaveChangesAsync(); Logger.LogInformation("{user} updated ManufacturingArea[{name}]", UserName, manufacturingArea.Name); TempData["Message"] = "Area has been updated."; } catch (DbUpdateConcurrencyException ex) { string message; if (!ManufacturingAreaExists(manufacturingArea.ManufacturingAreaId)) { message = $"Cannot edit area because it no longer exists."; } else { message = $"Cannot edit area because of a concurrency error: {ex.Message}"; } TempData["Error"] = message; Logger.LogError("Error updating ManufacturingArea[{id}] because of {message}", id, message); } catch (Exception ex) { string message = $"Cannot edit area because of a general error: {ex.Message}"; TempData["Error"] = message; Logger.LogError("Error updating ManufacturingArea[{id}] because of {message}", id, message); } return(RedirectToAction(nameof(Index))); } //load the select (drop down) list ViewData["T3GroupId"] = await GetT3GroupsSelectListAsync(manufacturingArea.T3GroupId); return(View(manufacturingArea)); }