Exemplo n.º 1
0
        /// <summary>
        /// Processes Row information for answers that have two parameters to determine their value
        /// </summary>
        /// <param name="responseQuestion"></param>
        /// <param name="aInfo"></param>
        /// <returns></returns>
        private string ProcessRow(QuestionInfo responseQuestion, AnswerInfo aInfo)
        {
            AnswerInfo          qRow      = new AnswerInfo();
            QuestionSubtypeEnum qaSubtype = responseQuestion.QuestionType.Subtype;

            // Demographic QuestionFamily types have extra spaces and newlines in front and back of their answer text
            if (qaSubtype == QuestionSubtypeEnum.International)
            {
                qRow = responseQuestion.QuestionAnswerList.Where(e => e.AnswerID == aInfo.Row).FirstOrDefault <AnswerInfo>();
                return(qRow.Text.Trim('\n').Trim());
            }
            else
            {
                qRow = responseQuestion.QuestionAnswerList.Where(e => e.AnswerID == aInfo.Row).FirstOrDefault <AnswerInfo>();
            }

            // for optional comments in Matrices
            if (qRow != null)
            {
                return(qRow.Text);
            }

            else
            {
                return(responseQuestion.QuestionAnswerList[0].Text);
            }
        }
Exemplo n.º 2
0
        /// <summary>
        /// Processes Answer information for answers that only have one parameter to determine their value
        /// </summary>
        /// <param name="responseQuestion"></param>
        /// <param name="aInfo"></param>
        /// <returns></returns>
        private string ProcessAnswer(QuestionInfo responseQuestion, AnswerInfo aInfo)
        {
            AnswerInfo          qi        = new AnswerInfo();
            QuestionSubtypeEnum qaSubtype = responseQuestion.QuestionType.Subtype;

            if (qaSubtype == QuestionSubtypeEnum.Menu || qaSubtype == QuestionSubtypeEnum.Vertical || qaSubtype == QuestionSubtypeEnum.Horizontal)
            {
                qi = responseQuestion.QuestionAnswerList.Where(e => e.AnswerID == aInfo.Row).FirstOrDefault <AnswerInfo>();
            }
            if (qaSubtype == QuestionSubtypeEnum.Ranking || qaSubtype == QuestionSubtypeEnum.Rating)
            {
                qi = responseQuestion.QuestionAnswerList.Where(e => e.AnswerID == aInfo.Column).FirstOrDefault <AnswerInfo>();
            }

            // for optional comments in Matrices
            if (qi != null)
            {
                return(qi.Text);
            }

            else
            {
                return(aInfo.Text);
            }
        }