public IActionResult Update(int id, PageModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } var page = _context.Pages.FirstOrDefault(i => i.Id == id) ?? throw new ArgumentOutOfRangeException(nameof(id), "Page does not exist."); page.Name = model.Name; page.Path = model.Path; page.SortOrder = model.SortOrder; page.Body = model.Body; page.IsEnabled = model.IsEnabled; _context.Update(page); _context.SaveChanges(); return(new JsonResult(new PageModel(page))); }
public IActionResult Update(Guid id, UserModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } var user = _context.Users.FirstOrDefault(i => i.Id == id) ?? throw new ArgumentOutOfRangeException(nameof(id), "User does not exist."); user.Username = model.Username; user.Email = model.Email; user.Password = _auth.HashPassword(model.Password); user.DisplayName = model.DisplayName; user.FirstName = model.FirstName; user.LastName = model.LastName; user.IsEnabled = model.IsEnabled; _context.Update(user); _context.SaveChanges(); return(new JsonResult(new UserModel(user))); }
public IActionResult Update(int id, ItemModel model) { if (model == null) { throw new ArgumentNullException(nameof(model)); } // Determine if the parent already exists. var path = System.IO.Path.GetDirectoryName(model.Path).Replace("\\", "/"); var parent = _context.Items.FirstOrDefault(i => i.Path == path) ?? new Item() { Name = new System.IO.DirectoryInfo(path).Name, Path = path, PublishedOn = model.PublishedOn?.ToUniversalTime(), CreatedOn = model.CreatedOn?.ToUniversalTime() ?? DateTime.UtcNow, UpdatedOn = model.UpdatedOn?.ToUniversalTime() ?? DateTime.UtcNow }; var item = _context.Items.FirstOrDefault(i => i.Id == id) ?? throw new ArgumentOutOfRangeException(nameof(id), "Item does not exist."); item.Name = model.Name; item.Description = model.Description; item.Path = model.Path; item.Author = model.Author; item.PublishedOn = model.PublishedOn?.ToUniversalTime(); item.CreatedOn = model.CreatedOn?.ToUniversalTime() ?? DateTime.UtcNow; item.UpdatedOn = model.UpdatedOn?.ToUniversalTime() ?? DateTime.UtcNow; item.Parent = parent; if (parent.Id == 0) { _context.Add(parent); } _context.Update(item); _context.SaveChanges(); return(new JsonResult(new ItemModel(item))); }