Esempio n. 1
0
        public List <Person> FindPeopleAndRelations(int?gender, string name, bool includeAncestors,
                                                    int maxRecordsToDisplay)
        {
            var data = StaticCache.GetData();

            if (data == null)
            {
                return(null);
            }

            var query = data.People.Where(p => p.Name.Equals(name, StringComparison.CurrentCultureIgnoreCase));

            var personOfInterest = query.FirstOrDefault();

            if (personOfInterest == null)
            {
                return(null);
            }

            var results = BuildUpList(personOfInterest, maxRecordsToDisplay, gender, includeAncestors);

            if (results == null)
            {
                return(null);
            }

            foreach (var person in results)
            {
                person.BirthPlace = StaticCache.GetPlaceById(person.Place_Id);
            }

            return(results);
        }
Esempio n. 2
0
        public List <Person> FindPeople(int?gender, string name)
        {
            var data = StaticCache.GetData();

            if (data == null)
            {
                return(null);
            }

            var query = data.People.Where(p => p.Name.IndexOf(name, StringComparison.CurrentCultureIgnoreCase) >= 0);

            if (gender.HasValue)
            {
                query = query.Where(p => p.Gender.Equals((Enums.Gender)gender.Value == Enums.Gender.Male ? "M" : "F"));
            }

            var results = query.ToList();

            foreach (var person in results)
            {
                person.BirthPlace = StaticCache.GetPlaceById(person.Place_Id);
            }

            return(results);
        }