コード例 #1
0
        internal static Distractor ConvertDto(DistractorDTO q, Distractor instance, bool updateQuestionDate,
                                              FileModel fileModel, QuestionModel questionModel, UserModel userModel, SubModuleItemModel subModuleItemModel)
        {
            instance                 = instance ?? new Distractor();
            instance.IsActive        = q.isActive;
            instance.DistractorName  = q.distractor;
            instance.DistractorOrder = q.distractorOrder;
            instance.Score           = q.score;
            instance.IsCorrect       = q.isCorrect;
            if (instance.IsTransient())
            {
                instance.DateCreated = DateTime.Now;
            }

            instance.DateModified   = DateTime.Now;
            instance.Image          = q.imageId.HasValue ? fileModel.GetOneById(q.imageId.Value).Value : null;
            instance.LeftImage      = q.leftImageId.HasValue ? fileModel.GetOneById(q.leftImageId.Value).Value : null;
            instance.RightImage     = q.rightImageId.HasValue ? fileModel.GetOneById(q.rightImageId.Value).Value : null;
            instance.Question       = q.questionId.HasValue ? questionModel.GetOneById(q.questionId.Value).Value : null;
            instance.ModifiedBy     = q.modifiedBy.HasValue ? userModel.GetOneById(q.modifiedBy.Value).Value : null;
            instance.CreatedBy      = q.createdBy.HasValue ? userModel.GetOneById(q.createdBy.Value).Value : null;
            instance.DistractorType = q.distractorType;
            if (instance.Question != null && updateQuestionDate)
            {
                var subModuleItem = instance.Question.SubModuleItem;
                subModuleItem.DateModified = DateTime.Now;
                subModuleItemModel.RegisterSave(subModuleItem);
            }

            return(instance);
        }
コード例 #2
0
        public FileDTO GetById(Guid id)
        {
            var file   = FileModel.GetOneById(id).Value;
            var result = new FileDTO(file);

            return(result);
        }
コード例 #3
0
        /// <summary>
        /// The save.
        /// </summary>
        /// <param name="dto">
        /// The DTO.
        /// </param>
        /// <returns>
        /// The <see cref="FileDTO"/>.
        /// </returns>
        public FileDTO Save(FileDTO dto)
        {
            ValidationResult result;

            if (this.IsValid(dto, out result))
            {
                FileModel companyModel = this.FileModel;
                File      instance     = companyModel.GetOneById(dto.fileId).Value;
                if (instance != null)
                {
                    instance = this.ConvertDto(dto, instance);
                    companyModel.RegisterSave(instance, true);
                    return(new FileDTO(instance));
                }

                var error = new Error(Errors.CODE_ERRORTYPE_OBJECT_NOT_FOUND, ErrorsTexts.GetResultError_NotFound, ErrorsTexts.EntityCreationError_Subject);
                this.LogError("File.Save", error);
                throw new FaultException <Error>(error, error.errorMessage);
            }

            var validationError = this.GenerateValidationError(result);

            this.LogError("File.Save", validationError);
            throw new FaultException <Error>(validationError, validationError.errorMessage);
        }