/// <summary>
        /// This method transfers all certification data for later calls
        /// </summary>
        /// <param name="externalKey">The external primary key of the family</param>
        /// <param name="transactionKey">The key for a particular transaction (you may have had several calls against one family)</param>
        /// <param name="effectiveDate">The date this transaction is effective for, compliance may vary based on this date.</param>
        /// <returns></returns>
        public bool TransferDataForEligibilityCall(string externalKey, string transactionKey, DateTime effectiveDate)
        {
            bool returnValue = false;

            try
            {
                //get the dt family
                tcDTFamily tcDTFamily = _uow.DTFamilyRepository.Get(filter: f => f.ExternalKey == externalKey && f.TransactionKey == transactionKey).Single();

                //transfer the family
                tcFamily family = TransferDTFamilyToTCFamily(_uow, tcDTFamily, effectiveDate, externalKey, transactionKey);


                //get the dtfamilymembers
                IEnumerable <tcDTFamilyMember> dtFamilyMembers = _uow.DTFamilyMemberRepository.Get(filter: f => f.fkFamily == tcDTFamily.PK);


                //transfer the family members
                IEnumerable <tcFamilyMember> tcFamilyMembers = TransferDTFamilyMemberInfoToTCFamilyMemberInfo(_uow, dtFamilyMembers, family, tcDTFamily, transactionKey);


                _uow.Save();



                returnValue = true;

                return(returnValue);
            }
            finally
            {
                _uow.Dispose();
            }
        }