示例#1
0
        public async Task <IActionResult> OnGetAsync()
        {
            var user = await userManager.GetUserAsync(User);

            if (user == null)
            {
                return(NotFound(string.Format(this.localizer[ErrorConstants.UserNotFound], userManager.GetUserId(User))));
            }

            Model = await this.userAddressService.BindAddress(user.Id);

            return(Page());
        }
示例#2
0
        public async Task <string> AddOrUpdateAddress(string userId, AddAddressBindingModel model)
        {
            var dbUser = await DbContext.Users.Include(u => u.Address).FirstOrDefaultAsync(u => u.Id == userId);

            if (dbUser.Address == null)
            {
                var address = Mapper.Map <Address>(model);
                DbContext.Addresses.Add(address);
                DbContext.SaveChanges();
                dbUser.Address = address;
                DbContext.SaveChanges();
                return(SuccessConstants.AddressAdd);
            }
            var currAddress = await DbContext.Addresses.FirstOrDefaultAsync(a => a.Id == dbUser.Address.Id);

            int id = currAddress.Id;

            currAddress    = Mapper.Map(model, currAddress);
            currAddress.Id = id;
            DbContext.Addresses.Update(currAddress);
            DbContext.SaveChanges();
            return(SuccessConstants.AddressUpdate);
        }