public async Task <Category> UpdateCategory(Messaging.Model.Category categoryToEdit) { if (!_repository.AllEntities().Any(x => x.Id == categoryToEdit.CategoryId)) { return(await AddNewCategory(categoryToEdit)); } var editedCategory = _repository.AllEntities().First(x => x.Id == categoryToEdit.CategoryId); _repository.Update(editedCategory); editedCategory.Name = categoryToEdit.Name; editedCategory.Visible = categoryToEdit.Visible; await _unitOfWork.SaveChangesAsync(); return(editedCategory); }