public IActionResult UpdateColour([FromBody] ColourViewModel model) { if (ModelState.IsValid) { try { var result = ManageSiteHelper.AddColour(model, _context); if (result == UpdateResult.Error) { throw new Exception("Colour couldn't be updated."); } else if (result == UpdateResult.Duplicate) { throw new Exception("Colour already exists."); } return(ControllerHelper.ReturnResult(UpdateResult.Success)); } catch (System.Exception ex) { StatusMessage = "An Error occured; " + ex.Message; } } model.StatusMessage = StatusMessage; return(ControllerHelper.ReturnResult(UpdateResult.Error, StatusMessage)); }
public MainWindow() { ColourViewModel cvm = new ColourViewModel(); viewModel = cvm; this.DataContext = ViewModel; InitializeComponent(); }
// GET: /<controller>/ public IActionResult Colour(string statusMessage = null, string successMessage = null, string failureMessage = null) { var viewModel = new ColourViewModel() { Colours = _context.Colours.OrderBy(x => x.Value).ToList(), SuccessMessage = successMessage, StatusMessage = statusMessage, FailureMessage = failureMessage }; return(View(viewModel)); }
public IActionResult Colour(ColourViewModel model) { string failureMessage = null; string successMessage = null; var redirectUrl = "/ManageSite/Colour"; if (ModelState.IsValid) { var result = ManageSiteHelper.AddColour(model, _context); if (result == UpdateResult.Error) { failureMessage = "Colour couldn't be updated."; } else if (result == UpdateResult.Success) { successMessage = "Colour updated."; } else if (result == UpdateResult.Duplicate) { failureMessage = "Colour already exists."; } } if (!string.IsNullOrWhiteSpace(failureMessage)) { redirectUrl += string.Format("?failureMessage={0}", failureMessage); } if (!string.IsNullOrWhiteSpace(successMessage)) { redirectUrl += string.Format("?successMessage={0}", successMessage); } return(ControllerHelper.RedirectToLocal(this, redirectUrl)); }
public static UpdateResult AddColour(ColourViewModel model, GustafsGalleryStoreContext context) { try { if (model.Id == 0) { var colour = new Colour() { Value = model.Colour }; List <Colour> colours = new List <Colour>(); colours = context.Colours.Where(x => x.Value == model.Colour).ToList(); if (colours.Count > 0) { return(UpdateResult.Duplicate); } context.Add(colour); } else { var inDb = context.Colours.Where(x => x.Id == model.Id).SingleOrDefault(); inDb.Value = model.Colour; context.Update(inDb); } context.SaveChanges(); return(UpdateResult.Success); } catch { return(UpdateResult.Error); } }
public MainWindow(ColourViewModel vm) { viewModel = vm; this.DataContext = ViewModel; InitializeComponent(); }