public void Setup() { SetupParentYesNo( nameof(ArrivalDateQuestion), Content.ArrivalDateQuestion_Title, Content.ArrivalDateQuestion_Label, new List <AnswerPotential> { new AnswerPotential { Value = "1", Description = Content.ArrivalDateQuestion_Yes_Description }, new AnswerPotential { Value = "2", Description = Content.ArrivalDateQuestion_No_Description } }, new Validator { InValidErrorMessage = Content.ArrivalDateQuestion_InvalidErrorMessage, NullErrorMessage = Content.ArrivalDateQuestion_NullErrorMessage, ValidatorType = ValidatorType.DateTimeHistorical, AllowNull = true, }); var dateTimeQuestion = new DateTimeQuestion( nameof(ArrivalDateQuestion), Content.ArrivalDateQuestion_Date_Title, Content.ArrivalDateQuestion_Date_Label, new Validator { ValidatorType = ValidatorType.None }); SetupDateQuestion(dateTimeQuestion); }
public void Setup() { _question = Question.ForAnswer<EndResultModel, Choices?>(x => x.MyChoice); _birthdayQuestion = Question.ForAnswer<EndResultModel>(x => x.Birthday); _likesBlueQuestion = Question.ForAnswer<EndResultModel>(x => x.LikesBlue); _question.SetExtraQuestions(new Dictionary<Choices, Question> { {Choices.One, _birthdayQuestion}, {Choices.Three, _likesBlueQuestion} }); }
public object MapItem(List <IDomainInfoViewModels> list, object Tmodel) { try { Type myType = Tmodel.GetType(); IList <PropertyInfo> props = new List <PropertyInfo>(myType.GetProperties()); foreach (var domainItem in list) { foreach (PropertyInfo property in props) { if (domainItem.DomainInformation.PropertyMapping == property.Name) { switch (domainItem.DomainType.TypeName) { case "StringType": TextQuestion txtQuestion = (TextQuestion)domainItem.Question; property.SetValue(Tmodel, txtQuestion.Value); break; case "BoolType": BoolQuestion boolQuestion = (BoolQuestion)domainItem.Question; property.SetValue(Tmodel, boolQuestion.Value); break; case "IntType": IntQuestion intQuestion = (IntQuestion)domainItem.Question; property.SetValue(Tmodel, intQuestion.Value); break; case "DateTimeType": DateTimeQuestion dateTimeQuestion = (DateTimeQuestion)domainItem.Question; property.SetValue(Tmodel, dateTimeQuestion.Value); break; case "DropdownType": DropdownQuestion dropDownQuestion = (DropdownQuestion)domainItem.Question; property.SetValue(Tmodel, dropDownQuestion.Value); break; } } } } } catch (Exception ex) { var x = ex.Message; } return(Tmodel); }
public void Setup() { likesBlueQuestion = Question.ForAnswer<EndResultModel>(x => x.LikesBlue); likesGreenQuestion = Question.ForAnswer<EndResultModel>(x => x.LikesGreen); likesRedQuestion = Question.ForAnswer<EndResultModel>(x => x.LikesRed); birthdayQuestion = Question.ForAnswer<EndResultModel>(x => x.Birthday); likesBlueQuestion .OnYes( x => birthdayQuestion.OnNext( b => likesGreenQuestion.OnYes( m => likesRedQuestion)) ); theQuestion = likesBlueQuestion; }
public async Task <DomainViewModel> GetQuestionSet(int groupId) { DomainViewModel model = new DomainViewModel(); var selectedDomainGroup = await _groupRepo.GetAsync(groupId); model.DomainGroup = selectedDomainGroup; var SelectedDomainInformation = await _informationRepo.GetAllByGroupIdAsync(selectedDomainGroup.Id); List <IDomainInfoViewModels> domainInfoViewModel = new List <IDomainInfoViewModels>(); foreach (var domainInformation in SelectedDomainInformation) { DomainInfoViewModel infoModel = new DomainInfoViewModel { DomainInformation = domainInformation, DomainType = await _typeRepo.GetAsync(domainInformation.TypeId), }; if (infoModel.DomainType.TypeName == CustomType.StringType.ToString()) { IQuestion textQuestion = new TextQuestion { Text = infoModel.DomainInformation.Title, Order = infoModel.DomainInformation.Order, HasValidation = infoModel.DomainInformation.HasValidation }; infoModel.Question = textQuestion; } else if (infoModel.DomainType.TypeName == CustomType.BoolType.ToString()) { IQuestion boolQuestion = new BoolQuestion { Text = infoModel.DomainInformation.Title, Order = infoModel.DomainInformation.Order, HasValidation = infoModel.DomainInformation.HasValidation }; infoModel.Question = boolQuestion; } else if (infoModel.DomainType.TypeName == CustomType.IntType.ToString()) { IQuestion intQuestion = new IntQuestion { Text = infoModel.DomainInformation.Title, Order = infoModel.DomainInformation.Order, HasValidation = infoModel.DomainInformation.HasValidation }; infoModel.Question = intQuestion; } else if (infoModel.DomainType.TypeName == CustomType.DateTimeType.ToString()) { IQuestion dateTimeQuestion = new DateTimeQuestion { Text = infoModel.DomainInformation.Title, Order = infoModel.DomainInformation.Order, HasValidation = infoModel.DomainInformation.HasValidation }; infoModel.Question = dateTimeQuestion; } else if (infoModel.DomainType.TypeName == CustomType.DropdownType.ToString()) { IQuestion dropdownQuestion = new DropdownQuestion { Text = infoModel.DomainInformation.Title, Order = infoModel.DomainInformation.Order, HasValidation = infoModel.DomainInformation.HasValidation, Values = infoModel.DomainInformation.Arguments.Split(',').ToList() }; infoModel.Question = dropdownQuestion; } domainInfoViewModel.Add(infoModel); } model.DomainInfoViewModels = domainInfoViewModel; return(model); }