//Delete Person
        private static void DeletePerson()
        {
            GetPeople();
            int PersonID;

            GetIntegerInput(" Enter ID: ", out PersonID);

            using (var context = new SuccinctlyExamplesEntities())
            {
                Person P = context.People.FirstOrDefault(p => p.ID == PersonID);

                if (P != null)
                {
                    context.People.Remove(P);

                    if (context.SaveChanges() > 0)
                    {
                        Console.WriteLine("Delete Success");
                    }
                    else
                    {
                        DisplayError("Error!");
                    }
                }
                else
                {
                    DisplayError("Person does not exist.");
                }
            }
        }
        //Update Person Information
        private static void UpdatePersonInfo()
        {
            GetPeople();
            int PersonID;

            GetIntegerInput(" Enter ID: ", out PersonID);

            using (var context = new SuccinctlyExamplesEntities())
            {
                Console.Clear();
                Console.WriteLine("Enter new data for this person below.");

                Person P = context.People.FirstOrDefault(p => p.ID == PersonID);
                if (P != null)
                {
                    DisplayPersonTable(null, P);

                    P.ID = PersonID;

                    PromptInputMessage("Enter Last Name: ");
                    P.LastName = GetStringInput();
                    do
                    {
                        PromptInputMessage("Enter First Name: ");
                        P.FirstName = GetStringInput();

                        if (string.IsNullOrWhiteSpace(P.FirstName))
                        {
                            DisplayError("First Name cannot be empty.");
                        }
                    } while (string.IsNullOrWhiteSpace(P.FirstName));


                    PromptInputMessage("Enter Middle Name: ");
                    P.MiddleName = GetStringInput();

                    PromptInputMessage("Enter Date of Birth: ");
                    DateTime DOB;
                    bool     isValidDOB = DateTime.TryParse(Console.ReadLine(), out DOB);
                    if (isValidDOB)
                    {
                        P.DateOfBirth = DOB;
                    }
                    else
                    {
                        DisplayError("Invalid Date. It will be set to null.");
                        P.DateOfBirth = null;
                    }

                    PromptInputMessage("Enter Gender (0 = Unknown, 1 = Male, 2 = Female): ");
                    int  GenderID;
                    bool isValidGender = int.TryParse(Console.ReadLine(), out GenderID);
                    if (isValidGender)
                    {
                        isValidGender = GenderID >= 0 && GenderID < 3 ? true : false;
                    }
                    if (isValidGender)
                    {
                        P.GenderID = GenderID;
                    }
                    else
                    {
                        DisplayError("Invalid Gender. It will be set to null.");
                        P.GenderID = null;
                    }

                    if (context.SaveChanges() > 0)
                    {
                        Console.WriteLine("Update Success");
                    }
                    else
                    {
                        DisplayError("Error!");
                    }
                }
                else
                {
                    DisplayError("Person does not exist.");
                }
            }
        }
        //Insert Person
        private static void InsertPerson()
        {
            using (var context = new SuccinctlyExamplesEntities())
            {
                Console.Clear();
                Console.WriteLine("Enter data for this person below.");

                Person P = new Person();
                PromptInputMessage("Enter Last Name: ");
                P.LastName = GetStringInput();
                do
                {
                    PromptInputMessage("Enter First Name: ");
                    P.FirstName = GetStringInput();

                    if (string.IsNullOrWhiteSpace(P.FirstName))
                    {
                        DisplayError("First Name cannot be empty.");
                    }
                } while (string.IsNullOrWhiteSpace(P.FirstName));


                PromptInputMessage("Enter Middle Name: ");
                P.MiddleName = GetStringInput();

                PromptInputMessage("Enter Date of Birth: ");
                DateTime DOB;
                bool     isValidDOB = DateTime.TryParse(Console.ReadLine(), out DOB);
                if (isValidDOB)
                {
                    P.DateOfBirth = DOB;
                }
                else
                {
                    DisplayError("Invalid Date. It will be set to null.");
                    P.DateOfBirth = null;
                }

                PromptInputMessage("Enter Gender (0 = Unknown, 1 = Male, 2 = Female): ");
                int  GenderID;
                bool isValidGender = int.TryParse(Console.ReadLine(), out GenderID);
                if (isValidGender)
                {
                    isValidGender = GenderID >= 0 && GenderID < 3 ? true : false;
                }
                if (isValidGender)
                {
                    P.GenderID = GenderID;
                }
                else
                {
                    DisplayError("Invalid Gender. It will be set to null.");
                    P.GenderID = null;
                }

                context.People.Add(P);

                if (context.SaveChanges() > 0)
                {
                    Console.WriteLine("Insert Success");
                }
                else
                {
                    DisplayError("Error!");
                }
            }
        }