Exemple #1
0
        public async Task CreateSimpleQuiz(SimpleQuizModel quiz)
        {
            try
            {
                DynamicParameters p = new DynamicParameters();

                p.Add("Question", quiz.Question);
                p.Add("IsOpinionQuestion", quiz.IsOpinionQuestion);
                p.Add("OrderNo", quiz.OrderNo);
                p.Add("SectionId", quiz.SectionId);
                p.Add("Id", DbType.Int32, direction: ParameterDirection.Output);

                _dataAccess.StartTransaction(SD.DB);

                await _dataAccess.SaveDataInTransaction("dbo.spSimpleQuiz_Insert", p);

                var quizId = p.Get <int>("Id");

                foreach (var option in quiz.Options)
                {
                    option.QuizId = quizId;

                    await _dataAccess.SaveDataInTransaction("dbo.spSimpleQuizOptions_Insert", option);
                }

                _dataAccess.CommitTransaction();
            }
            catch
            {
                _dataAccess.RollbackTransaction();

                throw;
            }
        }
Exemple #2
0
        /// <summary>
        /// Выполняет преобразование <see cref="QuizDto"/> в <see cref="SimpleQuizModel"/>.
        /// </summary>
        /// <param name="dto">Исходный объект.</param>
        /// <returns>Преобразованный объект.</returns>
        public static SimpleQuizModel SimpleTranslate(QuizDto dto)
        {
            var model = new SimpleQuizModel
            {
                Id            = dto.Id,
                Title         = dto.Title,
                TotalTimeSecs = dto.TotalTimeSecs,
            };

            return(model);
        }