示例#1
0
        public BuildVersionDTO Save(BuildVersionDTO build)
        {
            ValidationResult validationResult;

            if (this.IsValid(build, out validationResult))
            {
                BuildVersionModel sessionModel = this.BuildVersionModel;
                bool         isTransient       = build.buildVersionId == 0;
                BuildVersion buildInstance     = isTransient ? null : sessionModel.GetOneById(build.buildVersionId).Value;
                buildInstance = this.ConvertDto(build, buildInstance);
                sessionModel.RegisterSave(buildInstance, true);
                this.UpdateCache <BuildVersionService>(x => x.GetAll());
                return(new BuildVersionDTO(buildInstance));
            }

            var error = this.GenerateValidationError(validationResult);

            this.LogError("BuildVersion.Save", error);
            throw new FaultException <Error>(error, error.errorMessage);
        }
示例#2
0
        public int DeleteById(int id)
        {
            BuildVersion      buildVersion;
            BuildVersionModel model = this.BuildVersionModel;

            if ((buildVersion = model.GetOneById(id).Value) == null)
            {
                var error =
                    new Error(
                        Errors.CODE_ERRORTYPE_INVALID_SESSION,
                        ErrorsTexts.SessionError_Subject,
                        ErrorsTexts.SessionError_NotFound);
                this.LogError("BuildVersion.DeleteById", error);
                throw new FaultException <Error>(error, error.errorMessage);
            }

            model.RegisterDelete(buildVersion, true);
            this.UpdateCache <BuildVersionService>(x => x.GetAll());
            return(id);
        }