/// <summary> /// /// </summary> /// <param name="response"></param> /// <param name="data"></param> /// <returns></returns> internal List <IResponseType> UnwrapResponseData(QuestionResponseType responseType, JObject response) { switch (responseType) { case QuestionResponseType.OptionSelect: return(response["values"].ToObject <List <IOptionSelectResponse> > ().Cast <IResponseType> ().ToList()); case QuestionResponseType.Timeline: return(response["values"].ToObject <List <ITimelineResponse> > ().Cast <IResponseType> ().ToList()); case QuestionResponseType.DateTime: return(new List <IResponseType> () { response.ToObject <DateTimeResponse> () }); case QuestionResponseType.String: return(new List <IResponseType> () { response.ToObject <StringResponse> () }); case QuestionResponseType.Location: return(new List <IResponseType> () { response["value"].ToObject <LocationResponse> () }); case QuestionResponseType.Integer: return(new List <IResponseType> () { response.ToObject <DecimalResponse> () }); case QuestionResponseType.Decimal: return(new List <IResponseType> () { response.ToObject <DecimalResponse> () }); case QuestionResponseType.Json: return(new List <IResponseType> () { response.ToObject <JsonResponse> () }); default: break; } return(null); }
/// <summary> /// /// </summary> /// <param name="responseType"></param> /// <param name="language"></param> /// <param name="name"></param> /// <returns></returns> public SurveyQuestionAttribute(QuestionResponseType responseType, params string[] moduleDependencies) { this.QuestionResponseType = responseType; this.ModuleDependencies = moduleDependencies; }