public async Task <int> UpdateAddressAsync(Address address) { ValidateNotNull(address); await ValidateId(_addressDao, address.Id); if (address.City != null && address.CityId <= 0) { address.CityId = address.City.Id; } await ValidateId(_cityDao, address.CityId); return(await _addressDao.FluentUpdate(address).ExecuteAsync()); }