public void AddDeceased(Deceased deceased)
        {
            if (deceased == null)
            {
                throw new ArgumentNullException("Deceased can not be null");
            }

            this.Deceased.Add(deceased);
        }
        private static Reservation ParseReservation(DataTable dataTable, int graveSpreadID)
        {
            //nb.ID AS NAB_ID, nb.naam AS NAB_NAAM, nb.adres AS NAB_ADRES, nb.postcode AS NAB_POSTCODE, nb.woonplaats AS NAB_WOONPLAATS, nb.aantekening AS NAB_AANTEKENING, c.ID AS CON_ID, c.bestandsnaam AS CON_BESTANDSNAAM, c.plaatsingsdatum AS CON_PLAATSINGSDATUM
            if (dataTable.Rows.Count == 0)
            {
                return null;
            }

            GraveSpread graveSpread = Controller.Cemetery.GraveSpreads.Find(gs => gs.ID == graveSpreadID);

            DataRow firstRow = dataTable.Rows[0];

            int reservationID = (int)firstRow["RES_ID"];
            DateTime reservationstartDate = DateTime.Parse(firstRow["RES_RECHTENVAN"].ToString());
            DateTime reservationEndDate = DateTime.Parse(firstRow["RES_RECHTENTOT"].ToString());
            int durationInYears = (int)firstRow["RES_LOOPTIJD"];
            bool isProlonged = (int)firstRow["RES_ISVERLENGD"] == 1;
            bool areClearingCostsInvoiced = (int)firstRow["RES_RUIMKOSTENGEFACTUREERD"] == 1;

            Reservation reservation = new Reservation(reservationID, graveSpread, reservationstartDate, reservationEndDate, durationInYears, isProlonged, areClearingCostsInvoiced);

            foreach (DataRow row in dataTable.Rows)
            {
                int deceasedID = (int)row["OL_ID"];

                Deceased deceased = reservation.Deceased.Find(d => d.ID == deceasedID);

                if (deceased == null)
                {
                    string deceasedName = row["OL_NAAM"].ToString();
                    string firstNames = row["OL_VOORNAMEN"].ToString();
                    string partnerOf = row["OL_ECHTGENOOTVAN"].ToString();
                    DateTime dateOfBirth = DateTime.Parse(row["OL_GEBOORTEDATUM"].ToString());
                    DateTime deceaseDate = DateTime.Parse(row["OL_OVERLIJDENSDATUM"].ToString());

                    deceased = new Deceased(deceasedID, deceasedName, firstNames, partnerOf, dateOfBirth, deceaseDate);

                    Object survivingRelativeIDUnparsed = row["NAB_ID"];

                    if (survivingRelativeIDUnparsed != null)
                    {
                        int survivingRelativeID = (int)survivingRelativeIDUnparsed;
                    }

                    reservation.AddDeceased(deceased);
                }
            }
        }