Ejemplo n.º 1
0
        /**
         * Returns the StudyField of the given type from the Study object
         * for all types other than StudyFIeldType.All. In this case,
         * null is returned
         */
        public static StudyField GetFieldByType(Study study, StudyFieldType type)
        {
            switch (type)
            {
            case StudyFieldType.PublicationYear:
                return(study.PublicationYear);

            case StudyFieldType.CorrelationCoefficient:
                return(study.CorrelationCoefficient);

            case StudyFieldType.SampleSize:
                return(study.SampleSize);

            case StudyFieldType.VariablesControlled:
                return(study.VariablesControlled);

            case StudyFieldType.MeanAge:
                return(study.MeanAge);

            case StudyFieldType.StudyDesign:
                return(study.StudyDesign);

            case StudyFieldType.AdherenceMeasure:
                return(study.AdherenceMeasure);

            case StudyFieldType.ConscientiousnessMeasure:
                return(study.ConscientiousnessMeasure);

            case StudyFieldType.MethodologicalQuality:
                return(study.MethodologicalQuality);
            }

            throw new ArgumentException("Cannot get field of type: " + type);
        }
Ejemplo n.º 2
0
        /**
         * Returns results of search the studies data by key/value, using
         * inclusion of the search term
         */
        public List <Study> FindByColumnAndValue(StudyFieldType column, string value)
        {
            var results = from j in Studies
                          where GetFieldByType(j, column).Contains(value)
                          select j;

            return(results.ToList());
        }
Ejemplo n.º 3
0
        // Lists Studies with a given field matching a given value
        public IActionResult Studies(StudyFieldType column, string value)
        {
            SearchStudiesViewModel studiesViewModel = new SearchStudiesViewModel();

            studiesViewModel.Studies = studyData.FindByColumnAndValue(column, value);
            studiesViewModel.Title   = "Studies with " + column + ": " + value;

            return(View(studiesViewModel));
        }
Ejemplo n.º 4
0
        // Lists the values of a given column, or all studiess if selected
        public IActionResult Values(StudyFieldType column)
        {
            if (column.Equals(StudyFieldType.All))
            {
                SearchStudiesViewModel studiesViewModel = new SearchStudiesViewModel();
                studiesViewModel.Studies = studyData.Studies;
                studiesViewModel.Title   = "All Studies";
                return(View("Studies", studiesViewModel));
            }
            else
            {
                StudyFieldsViewModel studyFieldsViewModel = new StudyFieldsViewModel();

                IEnumerable <StudyField> fields;

                switch (column)
                {
                case StudyFieldType.PublicationYear:
                    fields = studyData.PublicationYears.ToList().Cast <StudyField>();
                    break;

                case StudyFieldType.CorrelationCoefficient:
                    fields = studyData.CorrelationCoefficients.ToList().Cast <StudyField>();
                    break;

                case StudyFieldType.SampleSize:
                    fields = studyData.SampleSizes.ToList().Cast <StudyField>();
                    break;

                case StudyFieldType.VariablesControlled:
                    fields = studyData.VariablesControlled.ToList().Cast <StudyField>();
                    break;

                case StudyFieldType.StudyDesign:
                    fields = studyData.StudyDesigns.ToList().Cast <StudyField>();
                    break;

                case StudyFieldType.AdherenceMeasure:
                    fields = studyData.AdherenceMeasures.ToList().Cast <StudyField>();
                    break;

                case StudyFieldType.ConscientiousnessMeasure:
                    fields = studyData.ConscientiousnessMeasures.ToList().Cast <StudyField>();
                    break;

                case StudyFieldType.MeanAge:
                    fields = studyData.MeanAges.ToList().Cast <StudyField>();
                    break;

                case StudyFieldType.MethodologicalQuality:
                default:
                    fields = studyData.MethodologicalQualities.ToList().Cast <StudyField>();
                    break;
                }

                studyFieldsViewModel.Fields = fields;
                studyFieldsViewModel.Title  = "All " + column + " Values";
                studyFieldsViewModel.Column = column;

                return(View(studyFieldsViewModel));
            }
        }