public ActionResult Create(
            [Bind(Include = "QuizItemId,Question," +
                            "AnswerAlternative1,AnswerAlternative2," +
                            "AnswerAlternative3,AnswerAlternative4," +
                            "IsAnswerAlternative1Correct,IsAnswerAlternative2Correct," +
                            "IsAnswerAlternative3Correct,IsAnswerAlternative4Correct")]
            QuizItemQuestionViewModel model)
        {
            if (ModelState.IsValid == false)
            {
                LoadRelationshipProperties(model);
                return(View(model));
            }

            var quizItemQuestion = new QuizItemQuestion
            {
                QuizItemId                  = model.QuizItemId,
                Created                     = DateTime.UtcNow,
                Question                    = model.Question,
                AnswerAlternative1          = model.AnswerAlternative1,
                AnswerAlternative2          = model.AnswerAlternative2,
                AnswerAlternative3          = model.AnswerAlternative3,
                AnswerAlternative4          = model.AnswerAlternative4,
                IsAnswerAlternative1Correct = model.IsAnswerAlternative1Correct,
                IsAnswerAlternative2Correct = model.IsAnswerAlternative2Correct,
                IsAnswerAlternative3Correct = model.IsAnswerAlternative3Correct,
                IsAnswerAlternative4Correct = model.IsAnswerAlternative4Correct
            };

            _quizItemQuestionRepository.Add(quizItemQuestion);

            return(RedirectToAction("Index", new { model.QuizItemId }));
        }
        public int Add(QuizItemQuestion model)
        {
            model.Id = GetNextId();
            Items.Add(model);

            return(model.Id);
        }
        public int Add(QuizItemQuestion model)
        {
            using (var context = new QuizAppEntities())
            {
                context.QuizItemQuestions.Add(model);
                context.SaveChanges();

                return(model.Id);
            }
        }
Esempio n. 4
0
 public static QuestionWithAnswersInputViewModel MapFromDataModel(QuizItemQuestion model)
 {
     return(new QuestionWithAnswersInputViewModel
     {
         QuizItemQuestionId = model.Id,
         Question = model.Question,
         Answer1 = model.AnswerAlternative1,
         Answer2 = model.AnswerAlternative2,
         Answer3 = model.AnswerAlternative3,
         Answer4 = model.AnswerAlternative4
     });
 }
        public void Update(QuizItemQuestion model)
        {
            using (var context = new QuizAppEntities())
            {
                var existingEntity = context.QuizItemQuestions.FirstOrDefault(o => o.Id == model.Id);
                if (existingEntity == null)
                {
                    return;
                }

                context.Entry(existingEntity).CurrentValues.SetValues(model);
                context.SaveChanges();
            }
        }
 public static QuizItemQuestionViewModel MapFromDataModel(QuizItemQuestion model)
 {
     return(new QuizItemQuestionViewModel
     {
         Id = model.Id,
         Question = model.Question,
         Created = model.Created.ToShortDateString() + " " + model.Created.ToShortTimeString(),
         Modified = model.Modified?.ToShortDateString() + " " + model.Modified?.ToShortTimeString(),
         QuizItemId = model.QuizItemId,
         AnswerAlternative1 = model.AnswerAlternative1,
         AnswerAlternative2 = model.AnswerAlternative2,
         AnswerAlternative3 = model.AnswerAlternative3,
         AnswerAlternative4 = model.AnswerAlternative4,
         IsAnswerAlternative1Correct = model.IsAnswerAlternative1Correct,
         IsAnswerAlternative2Correct = model.IsAnswerAlternative2Correct,
         IsAnswerAlternative3Correct = model.IsAnswerAlternative3Correct,
         IsAnswerAlternative4Correct = model.IsAnswerAlternative4Correct
     });
 }
        public static void Seed()
        {
            var created = DateTime.UtcNow.AddDays(-1);
            var ended   = DateTime.UtcNow.AddDays(-1).AddMinutes(2);

            // Create a Pub Quiz
            var quizItem = new QuizItem
            {
                Created = created,
                Name    = "Pub Quiz"
            };

            var quizItemId = InMemoryQuizItemRepository.Instance.Add(quizItem);

            // Create Pub Quiz questions
            var quizItemQuestion1 = new QuizItemQuestion
            {
                Created                     = created,
                QuizItemId                  = quizItemId,
                Question                    = "What is the hightest mountain in Europe?",
                AnswerAlternative1          = "Mount Korab",
                IsAnswerAlternative1Correct = true,
                AnswerAlternative2          = "Kilimanjaro",
                AnswerAlternative3          = "Gaustadtoppen",
                AnswerAlternative4          = "Trysilfjellet"
            };
            var quizItemQuestion2 = new QuizItemQuestion
            {
                Created                     = created,
                QuizItemId                  = quizItemId,
                Question                    = "Which team won the Premier League in 2015/2016?",
                AnswerAlternative1          = "Liverpool",
                AnswerAlternative2          = "Manchester City",
                AnswerAlternative3          = "Leicester City",
                IsAnswerAlternative3Correct = true,
                AnswerAlternative4          = "Tottenham"
            };

            var quizItemQuestion1Id = InMemoryQuizItemQuestionRepository.Instance.Add(quizItemQuestion1);
            var quizItemQuestion2Id = InMemoryQuizItemQuestionRepository.Instance.Add(quizItemQuestion2);

            // Create a taken Pub Quiz
            var quizTaking = new QuizTaking
            {
                Created         = created,
                Ended           = ended,
                QuizItemId      = quizItemId,
                ParticipantName = "Ola Nordmann",
                Score           = 200
            };

            var quizTakingId = InMemoryQuizTakingRepository.Instance.Add(quizTaking);

            // Create answers for Pub Quiz question 1
            var quizItemQuestionAnswer1 = new QuizItemQuestionAnswer
            {
                QuizItemQuestionId  = quizItemQuestion1Id,
                QuizTakingId        = quizTakingId,
                UserSpecifiedAnswer = "Mount Korab"
            };

            InMemoryQuizItemQuestionAnswerRepository.Instance.Add(quizItemQuestionAnswer1);

            // Create answers for Pub Quiz question 2
            var quizItemQuestionAnswer2 = new QuizItemQuestionAnswer
            {
                QuizItemQuestionId  = quizItemQuestion2Id,
                QuizTakingId        = quizTakingId,
                UserSpecifiedAnswer = "Leicester City"
            };

            InMemoryQuizItemQuestionAnswerRepository.Instance.Add(quizItemQuestionAnswer2);
        }
Esempio n. 8
0
        protected override void Seed(QuizAppEntities context)
        {
            var created = DateTime.UtcNow.AddDays(-1);
            var ended   = DateTime.UtcNow.AddDays(-1).AddMinutes(2);

            // Create a Pub Quiz
            var quizItem = new QuizItem
            {
                Created = created,
                Name    = "Pub Quiz"
            };

            context.QuizItems.AddOrUpdate(o => new { o.Name }, quizItem);

            // Create Pub Quiz questions
            var quizItemQuestion1 = new QuizItemQuestion
            {
                Created                     = created,
                QuizItemId                  = quizItem.Id,
                QuizItem                    = quizItem,
                Question                    = "What is the hightest mountain in Europe?",
                AnswerAlternative1          = "Mount Korab",
                IsAnswerAlternative1Correct = true,
                AnswerAlternative2          = "Kilimanjaro",
                AnswerAlternative3          = "Gaustadtoppen",
                AnswerAlternative4          = "Trysilfjellet"
            };
            var quizItemQuestion2 = new QuizItemQuestion
            {
                Created                     = created,
                QuizItemId                  = quizItem.Id,
                QuizItem                    = quizItem,
                Question                    = "Which team won the Premier League in 2015/2016?",
                AnswerAlternative1          = "Liverpool",
                AnswerAlternative2          = "Manchester City",
                AnswerAlternative3          = "Leicester City",
                IsAnswerAlternative3Correct = true,
                AnswerAlternative4          = "Tottenham"
            };

            context.QuizItemQuestions.AddOrUpdate(o => new { o.Question }, quizItemQuestion1);
            context.QuizItemQuestions.AddOrUpdate(o => new { o.Question }, quizItemQuestion2);

            // Create a taken Pub Quiz
            var quizTaking = new QuizTaking
            {
                Created         = created,
                Ended           = ended,
                QuizItemId      = quizItem.Id,
                QuizItem        = quizItem,
                ParticipantName = "Ola Nordmann",
                Score           = 200
            };

            context.QuizTakings.AddOrUpdate(o => new { o.ParticipantName }, quizTaking);

            // Create answers for Pub Quiz question 1
            var quizItemQuestionAnswer1 = new QuizItemQuestionAnswer
            {
                QuizItemQuestionId  = quizItemQuestion1.Id,
                QuizItemQuestion    = quizItemQuestion1,
                QuizTakingId        = quizTaking.Id,
                QuizTaking          = quizTaking,
                UserSpecifiedAnswer = "Mount Korab"
            };

            context.QuizItemQuestionAnswers.AddOrUpdate(o => new { o.UserSpecifiedAnswer }, quizItemQuestionAnswer1);

            // Create answers for Pub Quiz question 2
            var quizItemQuestionAnswer2 = new QuizItemQuestionAnswer
            {
                QuizItemQuestionId  = quizItemQuestion2.Id,
                QuizItemQuestion    = quizItemQuestion2,
                QuizTakingId        = quizTaking.Id,
                QuizTaking          = quizTaking,
                UserSpecifiedAnswer = "Leicester City"
            };

            context.QuizItemQuestionAnswers.AddOrUpdate(o => new { o.UserSpecifiedAnswer }, quizItemQuestionAnswer2);
        }
        public void Update(QuizItemQuestion model)
        {
            Delete(model.Id);

            Items.Add(model);
        }