private void ValidateUpdateRequest(UpdateContentTypeRequest request) { if (request == null) { throw new ValidationException("common.errors.invalidRequest"); } if (string.IsNullOrWhiteSpace(request.Name)) { throw new ValidationException("setting.addOrUpdateContentType.validation.nameIsRequired"); } IContentTypeRepository repo = IoC.Container.Resolve <IContentTypeRepository>(); ContentType contentType = repo.GetByName(request.Name); if (contentType != null && contentType.Id != request.Id) { throw new ValidationException("setting.addOrUpdateContentType.validation.nameAlreadyExisted"); } if (string.IsNullOrWhiteSpace(request.Key)) { throw new ValidationException("setting.addOrUpdateContentType.validation.keyIsRequired"); } if (request.Key.Contains(" ")) { throw new ValidationException("setting.addOrUpdateContentType.validation.keyShouldNotHaveWhiteSpace"); } contentType = repo.GetByKey(request.Key); if (contentType != null && contentType.Id != request.Id) { throw new ValidationException("setting.addOrUpdateContentType.validation.keyAlreadyExisted"); } }
public void Update(UpdateContentTypeRequest request) { this.ValidateUpdateRequest(request); using (IUnitOfWork uow = new UnitOfWork(RepositoryType.MSSQL)) { IContentTypeRepository repo = IoC.Container.Resolve <IContentTypeRepository>(uow); ContentType contentType = repo.GetById(request.Id.ToString()); contentType.Name = request.Name; contentType.Key = request.Key; contentType.Description = request.Description; this.UpdateParameters(contentType.Id, request.Parameters, uow); repo.Update(contentType); uow.Commit(); } }
public IResponseData <bool> UpdateContentType(UpdateContentTypeRequest request) { IResponseData <bool> response = new ResponseData <bool>(); try { IContentTypeService service = IoC.Container.Resolve <IContentTypeService>(); service.Update(request); response.SetData(true); } catch (ValidationException ex) { response.SetErrors(ex.Errors); response.SetStatus(HttpStatusCode.PreconditionFailed); } return(response); }
public void UpdateContentType(UpdateContentTypeRequest request) { IContentTypeService service = IoC.Container.Resolve <IContentTypeService>(); service.Update(request); }