예제 #1
0
        public async Task <IActionResult> Edit(ModelForEdit UserModel)
        {
            Address address = _context.Addresses.ToList().Find(x => x.Id == UserModel.Address.Id);

            address.ProvinceId = UserModel.Address.ProvinceId;
            address.DistrictId = UserModel.Address.DistrictId;
            address.WardId     = UserModel.Address.WardId;
            address.HouseNum   = UserModel.Address.HouseNum;

            _context.Update(address);
            await _context.SaveChangesAsync();

            var FindUser = _userManager.FindByIdAsync(UserModel.Id).Result;

            FindUser.Email       = UserModel.Email;
            FindUser.FullName    = UserModel.FullName;
            FindUser.PhoneNumber = UserModel.PhoneNum;
            FindUser.Address     = address;
            FindUser.Avatar      = UserModel.Avatar_Path;

            if (UserModel.iformfile_path != null)
            {
                FindUser.Avatar = UploadedFile(UserModel.iformfile_path);

                if (!string.IsNullOrEmpty(UserModel.Avatar_Path) && UserModel.Avatar_Path != AvatarUserDefault)
                {
                    string DelPath = Path.Combine(_hostEnvironment.WebRootPath, "Images/UserImages", UserModel.Avatar_Path);
                    System.IO.File.Delete(DelPath);
                }
            }
            await _userManager.UpdateAsync(FindUser);

            return(RedirectToAction("Index", "Account"));
        }
예제 #2
0
        public IActionResult Edit(string id)
        {
            var User    = _userManager.FindByIdAsync(id).Result;
            var address = _context.Addresses.ToList().Find(el => el.Id == User.AddressId);

            ModelForEdit model = new ModelForEdit()
            {
                Email       = User.Email,
                FullName    = User.FullName,
                Id          = User.Id,
                Address     = address,
                Avatar_Path = User.Avatar,
                PhoneNum    = User.PhoneNumber
            };

            return(View(model));
        }