Exemple #1
0
        public Student(List <object> vals, List <object> cols)
        {
            APICaller.FixList(cols, vals);

            // get all string values
            var valStrings = (from val in vals select val?.ToString()).ToList();

            // to lowercase
            var columnsInLowerCase = (from column in cols select column.ToString().ToLower()).ToList();

            /// Get column orders
            var colsInOrd = new
            {
                student          = columnsInLowerCase.IndexOf("student"),
                teacher          = columnsInLowerCase.IndexOf("teacher"),
                relationshipTerm = columnsInLowerCase.IndexOf("relationship term"),
                source           = columnsInLowerCase.IndexOf("source"),
            };

            var student = valStrings[colsInOrd.student];
            var teacher = valStrings[colsInOrd.teacher];

            // get string values
            source           = valStrings[colsInOrd.source];
            relationshipTerm = valStrings[colsInOrd.relationshipTerm];
            studentName      = string.Join(". ", student.Split(". ").Skip(1));
            teacherName      = string.Join(". ", teacher.Split(". ").Skip(1));
            // get int values
            studentId = int.Parse(student.Split(". ")[0]);
            teacherId = int.Parse(teacher.Split(". ")[0]);
        }
Exemple #2
0
        public Praise(List <object> vals, List <object> cols)
        {
            APICaller.FixList(cols, vals);

            // get all string values
            var valStrings = (from val in vals select val?.ToString()).ToList();

            // to lowercase
            var columnsInLowerCase = (from column in cols select column.ToString().ToLower()).ToList();

            /// Get column orders
            var colsInOrd = new
            {
                recommendee = columnsInLowerCase.IndexOf("recommendee"),
                recommender = columnsInLowerCase.IndexOf("recommender"),
                title       = columnsInLowerCase.IndexOf("title"),
                source      = columnsInLowerCase.IndexOf("source"),
            };

            var recommendee = valStrings[colsInOrd.recommendee];
            var recommender = valStrings[colsInOrd.recommender];

            // get string values
            source          = valStrings[colsInOrd.source];
            title           = valStrings[colsInOrd.title];
            recommendeeName = recommendee.Split(". ")[1];
            recommenderName = recommender.Split(". ")[1];
            // get int values
            recommendeeId = int.Parse(recommendee.Split(". ")[0]);
            recommenderId = int.Parse(recommender.Split(". ")[0]);
        }
Exemple #3
0
        public Person(List <object> vals, List <object> cols)
        {
            APICaller.FixList(cols, vals);

            // get all string values
            var valStrings = (from val in vals select val?.ToString()).ToList();

            // to lowercase
            var columnsInLowerCase = (from column in cols select column.ToString().ToLower()).ToList();

            /// Get column orders
            var colsInOrd = new
            {
                id         = columnsInLowerCase.IndexOf("id"),
                name       = columnsInLowerCase.IndexOf("name"),
                fullName   = columnsInLowerCase.IndexOf("full name"),
                taqreebId  = columnsInLowerCase.IndexOf("taqreeb id"),
                generation = columnsInLowerCase.IndexOf("generation"),
                birthYear  = columnsInLowerCase.IndexOf("birth year"),
                deathYear  = columnsInLowerCase.IndexOf("death year"),
                location   = columnsInLowerCase.IndexOf("location"),
                source     = columnsInLowerCase.IndexOf("source"),
                gender     = columnsInLowerCase.IndexOf("gender"),
            };

            // get string values
            name       = valStrings[colsInOrd.name];
            source     = valStrings[colsInOrd.source];
            kunya      = valStrings[colsInOrd.fullName];
            location   = valStrings[colsInOrd.location];
            generation = valStrings[colsInOrd.generation];

            if (generation != null && generation.ToLower() == "later generations")
            {
                generation = generation.ToLower();
            }

            // get int values
            id = int.Parse(valStrings[colsInOrd.id]);
            if (valStrings[colsInOrd.taqreebId] != null)
            {
                taqreebNumber = int.Parse(valStrings[colsInOrd.taqreebId]);
            }
            if (valStrings[colsInOrd.birthYear] != null)
            {
                birthYear = int.Parse(valStrings[colsInOrd.birthYear]);
            }
            if (valStrings[colsInOrd.deathYear] != null)
            {
                deathYear = int.Parse(valStrings[colsInOrd.deathYear]);
            }

            // This handles the case for Allaah since Allaah is referred to as "He"
            useMasculinePronoun = valStrings[colsInOrd.gender]?.ToLower() != "female";
        }