public bool UpdateContact(PersonDto personDto)
        {
            var contactInformationDataAccess
                = new ContactInfoDataAccess <Person>();

            //using()
            var person = contactInformationDataAccess.GetAllPerson().FirstOrDefault(x => x.Id == personDto.Id);

            if (person == null)
            {
                return(false);
            }

            person.FirstName = personDto.FirstName;
            person.LastName  = personDto.LastName;

            contactInformationDataAccess.Update(person);

            foreach (var item in personDto.personContactDtos)
            {
                var personContact = person.PersonContacts?.FirstOrDefault(x => x.ContactTypeId == item.ContactTypeId);

                if (personContact != null)
                {
                    personContact.ContactTypeValue = item.ContactTypeValue;

                    var contactInformationDataAccess2
                        = new ContactInfoDataAccess <PersonContact>();
                    contactInformationDataAccess2.Update(personContact);
                }
            }



            return(true);
        }
        public List <PersonDto> GetAllContacts()
        {
            List <PersonDto> personDtos = new List <PersonDto>();

            var contactInformationDataAccess
                = new ContactInfoDataAccess <Person>();

            var personList = contactInformationDataAccess.GetAllPerson();

            foreach (var item in personList)
            {
                var person = new PersonDto();

                person.Id        = item.Id;
                person.FirstName = item.FirstName;
                person.LastName  = item.LastName;

                person.personContactDtos = new List <PersonContactDto>();

                foreach (var contact in item.PersonContacts)
                {
                    PersonContactDto personContactDto = new PersonContactDto
                    {
                        ContactTypeId    = contact.ContactTypeId,
                        ContactTypeName  = contact.ContactType.TypeName,
                        ContactTypeValue = contact.ContactTypeValue
                    };

                    person.personContactDtos.Add(personContactDto);
                }

                personDtos.Add(person);
            }

            return(personDtos);
        }