public JsonResult UpdateCategory([DataSourceRequest] DataSourceRequest request, CategoryViewModel categoryModel) { if (ModelState.IsValid) { var existingCategory = this.db.Categories.GetById(categoryModel.Id); if (existingCategory != null) { existingCategory.Name = categoryModel.Name; this.db.Categories.Update(existingCategory); this.db.SaveChanges(); } else { ModelState.AddModelError("Category", "This category does not exist anymore and cant' be updated"); } } return Json(new[] { categoryModel }.ToDataSourceResult(request), JsonRequestBehavior.AllowGet); }
public JsonResult CreateCategory([DataSourceRequest] DataSourceRequest request, CategoryViewModel categoryModel) { if (string.IsNullOrWhiteSpace(categoryModel.Name)) { ModelState.AddModelError("Name", "The 'Category Name' field is required"); } else if (categoryModel.Name.Length < 5 || categoryModel.Name.Length > 255) { ModelState.AddModelError("Name", "The 'Category Name' field must between 5 and 255 characters"); } else { var newCategory = new Category() { Id = Guid.NewGuid(), Name = categoryModel.Name }; this.db.Categories.Add(newCategory); this.db.SaveChanges(); } return Json(new[] { categoryModel }.ToDataSourceResult(request), JsonRequestBehavior.AllowGet); }