Example #1
0
    public static void Main(string[] args)
    {
        var targetPerson = Console.ReadLine();

        FamilyTree.Create();

        var    information = new List <string>();
        string info;

        while ((info = Console.ReadLine()) != "End")
        {
            information.Add(info);
        }

        var newMembers = new List <string>(information.Where(s => !s.Contains('-')));

        foreach (var member in newMembers)
        {
            var parts = member.Split(' ');

            var birthDate = DateTime.ParseExact(parts.Last(), "d/M/yyyy",
                                                CultureInfo.InvariantCulture);

            var name = string.Join(" ", parts.Take(parts.Length - 1));

            FamilyTree.AddMember(new Person(name, birthDate));
        }

        FamilyTree.SetTargetMember(targetPerson);

        var relations = new List <string>(information.Where(s => s.Contains('-')));

        foreach (var relation in relations)
        {
            FamilyTree.AddRelation(relation);
        }

        Console.WriteLine(FamilyTree.TargetMember);
        Console.WriteLine("Parents:");
        Console.WriteLine(String.Join(Environment.NewLine, FamilyTree.TargetMember.FamilyInfo.Parents));
        Console.WriteLine("Children");
        Console.WriteLine(String.Join(Environment.NewLine, FamilyTree.TargetMember.FamilyInfo.Children));
    }
        private static void Main(string[] args)
        {
            FamilyTree.Create();
            PersonService personService = new PersonService();

            #region Data

            var father = new Person {
                FirstName = "Frank", LastName = "Far", Sex = Person.Gender.Male, DateOfBirth = DateTime.Parse("12/15/1965")
            };
            var mother = new Person {
                FirstName = "Noora", LastName = "Jones", Sex = Person.Gender.Female, DateOfDeath = DateTime.Parse("12/27/1955")
            };
            var father1 = new Person {
                FirstName = "James", LastName = "May", Sex = Person.Gender.Male, DateOfBirth = DateTime.Parse("07/07/1955")
            };
            var mother1 = new Person {
                FirstName = "Anna", LastName = "Pickets", Sex = Person.Gender.Female, DateOfBirth = DateTime.Parse("07/07/1947")
            };

            var children2 = new List <Person>
            {
                new Person
                {
                    FirstName   = "Frank",
                    LastName    = "Far",
                    Sex         = Person.Gender.Male,
                    DateOfBirth = DateTime.Parse("12/15/1965")
                },
                new Person
                {
                    FirstName   = "Noora",
                    LastName    = "Jones",
                    Sex         = Person.Gender.Female,
                    DateOfDeath = DateTime.Parse("12/27/1955")
                }
            };


            var children = new List <Person>()
            {
                new Person()
                {
                    FirstName = "Sam", LastName = "Nicoles", Sex = Person.Gender.Male, Father = father1, Mother = mother1, DateOfBirth = DateTime.Parse("12/15/1995"), Income = 1000.25
                },
                new Person()
                {
                    FirstName = "Jane", LastName = "Nicoles", Sex = Person.Gender.Female, Father = father1, Mother = mother1, DateOfBirth = DateTime.Parse("10/17/1997"), Income = 1000.25
                }
            };



            var person = new Person()
            {
                Childern = children, FirstName = "Norman", LastName = "Lewis", Father = father, Mother = mother, Sex = Person.Gender.Male, DateOfBirth = DateTime.Parse("06/05/1965"), Income = 2000.78
            };
            #endregion

            FamilyTree familyTree = new FamilyTree
            {
                Person  = person,
                Persons = children
            };
            familyTree.ShowFamilyTree();
            personService.Person = person;
            personService.GetFamily();
            Console.WriteLine("Search By Name");
            Console.WriteLine(familyTree.SearchByName("Ni"));
            //  Console.Clear();
            familyTree.ValidatePerson();

            Console.Read();
        }
Example #3
0
        public static void Main(string[] args)
        {
            var family = new FamilyTree();

            family = family.Create();

            Console.WriteLine("Press (1) for Show Tree, (2) for Search in the Family, (3) for Get Family, (4) for Get income of Family.");
            try
            {
                var input = Convert.ToInt32(Console.ReadLine());

                switch (input)
                {
                case (int)ChoiceEnum.Show:
                {
                    family.ShowTree();

                    break;
                }

                case (int)ChoiceEnum.Search:
                {
                    Console.WriteLine("Enter First/Last Name starts with: ");
                    var readLine = Console.ReadLine();

                    if (readLine != null)
                    {
                        family.SearchByName(readLine);
                    }

                    break;
                }

                case (int)ChoiceEnum.GetFamily:
                {
                    family.GetFamily();

                    break;
                }

                case (int)ChoiceEnum.GetIncome:
                {
                    family.GetFamilyIncome();

                    break;
                }

                default:
                {
                    Console.WriteLine("Wrong Choice ... Bye");
                    break;
                }
                }
                Console.WriteLine("\n Income Validation for Persons");
                var validations = family.Person.PersonValidation();
                foreach (var validateResult in validations)
                {
                    Console.WriteLine(validateResult);
                }
                Console.ReadLine();
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message);
            }
            finally
            {
                Console.WriteLine("Bye");
            }
        }