public async Task <ShareholderAddressDto> UpdateShareholderAddress(int id, ShareholderAddressDto shareholderAddressDto)
        {
            try
            {
                ShareholderAddress shareholderAddress = new ShareholderAddress();

                shareholderAddress = this.mapper.Map <ShareholderAddress>(shareholderAddressDto);
                shareholderAddress = await shareholderAddressRepository.Update(shareholderAddress);

                await shareholderAddressRepository.Save();

                cache.Remove(string.Format("{0}", CacheEnum.SHAREHOLDERADDRESS.ToString()));

                shareholderAddressDto = this.mapper.Map <ShareholderAddressDto>(shareholderAddress);
            }
            catch (Exception er) { logger.LogError(string.Format("{0}===================={1}====================\n", DateTime.Now.ToString(), er.ToString())); }

            return(shareholderAddressDto);
        }