public static void GetRelationship(String Name, String relationType) { Person person = FamilyMembers.Find(r => r.Name == Name); if (person == null) { Console.WriteLine("PERSON_NOT_FOUND"); return; } switch (relationType) { case "Siblings": case "Sibling": { List <String> siblings = person.Sibling(null); if (siblings == null) { Console.WriteLine("NONE"); } else { Console.WriteLine(person.Name + "'s siblings are - "); foreach (String name in siblings) { Console.WriteLine(name); } } break; } case "Maternal-Aunt": { List <String> aunts = person.MaternalAunt(); if (aunts == null) { Console.WriteLine("NONE"); } else { Console.WriteLine(person.Name + "'s Maternal-aunts are - "); foreach (String name in aunts) { Console.WriteLine(name); } } break; } case "Paternal-Uncle": { List <String> uncles = person.PaternalUncle(); if (uncles == null) { Console.WriteLine("NONE"); } else { Console.WriteLine(person.Name + "'s Paternal-Uncle are - "); foreach (String name in uncles) { Console.WriteLine(name); } } break; } case "Maternal-Uncle": { List <String> uncles = person.MaternalUncle(); if (uncles == null) { Console.WriteLine("NONE"); } else { Console.WriteLine(person.Name + "'s Maternal-Uncle are - "); foreach (String name in uncles) { Console.WriteLine(name); } } break; } case "Paternal-Aunt": { List <String> aunts = person.PaternalAunt(); if (aunts == null) { Console.WriteLine("NONE"); } else { Console.WriteLine(person.Name + "'s Paternal-Aunts are - "); foreach (String name in aunts) { Console.WriteLine(name); } } break; } case "Sister-In-Law": { Person spouse = person.Spouse(); List <String> sil = new List <String>(); if (spouse != null) { sil = spouse.Sibling("Female"); } List <String> brothers = person.Sibling("Male"); foreach (String brother in brothers) { Person bro = FamilyMembers.Find(r => r.Name == brother); Person wife = bro.Spouse(); sil.Add(wife.Name); } Console.WriteLine(person.Name + "'s Sister-in-laws are - "); foreach (String name in sil) { Console.WriteLine(name); } break; } case "Brother-In-Law": { Person spouse = person.Spouse(); List <String> bil = new List <String>(); if (spouse != null) { bil = spouse.Sibling("Male"); } List <String> sisters = person.Sibling("Female"); foreach (String sister in sisters) { Person sis = FamilyMembers.Find(r => r.Name == sister); Person husband = sis.Spouse(); bil.Add(husband.Name); } Console.WriteLine(person.Name + "'s Brother-in-laws are - "); foreach (String name in bil) { Console.WriteLine(name); } break; } case "Son": { List <String> sons = person.Children("Male"); if (sons == null) { Console.WriteLine("NONE"); } else { Console.WriteLine(person.Name + "'s Sons are - "); foreach (String name in sons) { Console.WriteLine(name); } } break; } case "Daughter": { List <String> daughters = person.Children("Female"); if (daughters == null) { Console.WriteLine("NONE"); } else { Console.WriteLine(person.Name + "'s Daughters are - "); foreach (String name in daughters) { Console.WriteLine(name); } } break; } } //Console.ReadLine(); }