Exemplo n.º 1
0
        private List <ProfileQAModel> MatchQuesAndAns(IList <ProfileQuestionModel> questions, IList <ProfileAnswerModel> answers)
        {
            var result = new List <ProfileQAModel>();

            foreach (var ques in questions)
            {
                ProfileQAModel qa = new ProfileQAModel();
                qa.QuestionID              = ques.QuestionID;
                qa.QuestionName            = ques.QuestionName;
                qa.QuestionDescription     = ques.QuestionDescription;
                qa.ProfileQuestionTypeName = ques.ProfileQuestionTypeName;
                qa.ProfileQuestionPriority = ques.ProfileQuestionPriority;
                qa.IsProfileQuestionActive = ques.IsProfileQuestionActive;
                qa.IsInLineProfileQuestion = ques.IsInLineProfileQuestion;

                var filteredAnswers = answers.Where(a => a.QuestionID == ques.QuestionID).OrderBy(a => a.ProfileAnswerDisplayOrder).ToList();
                qa.Answers = new List <PAnswerModel>();
                foreach (var ans in filteredAnswers)
                {
                    var answer = new PAnswerModel();
                    answer.AnsID                     = ans.AnsID;
                    answer.AnsName                   = ans.AnsName;
                    answer.AnsDescription            = ans.AnsDescription;
                    answer.IsProfileAnswerActive     = ans.IsProfileAnswerActive;
                    answer.ProfileAnswerDisplayOrder = ans.ProfileAnswerDisplayOrder;
                    qa.Answers.Add(answer);
                }

                result.Add(qa);
            }

            return(result);
        }
Exemplo n.º 2
0
        public IList <ProfileQAModel> GetAllProfileQAs(int memberId)
        {
            var profQAs   = new List <ProfileQAModel>();
            var questions = GetAllProfileQuestions();
            var answers   = GetAllProfileAnswers();

            profQAs = MatchQuesAndAns(questions, answers);
            ProfileQAModel res = new ProfileQAModel();

            res.Responses = GetProfileResponses(memberId);
            profQAs.Add(res);

            return(profQAs);
        }