Пример #1
0
        public async Task <IActionResult> Edit(AppUserEditDto appUser, IFormFile pic)
        {
            var user = await _userManager.FindByIdAsync(appUser.Id);

            if (pic != null)
            {
                var picName = user.UserName + "_" + Guid.NewGuid() + Path.GetExtension(pic.FileName);
                var path    = Path.Combine(Directory.GetCurrentDirectory(), "wwwroot/img/profile-picture/" + picName);
                using var stream = new FileStream(path, FileMode.Create);
                await pic.CopyToAsync(stream);

                user.ProfilPicture = picName;
            }

            user.FirstName     = appUser.FirstName;
            user.LastName      = appUser.LastName;
            user.Email         = appUser.Email;
            user.ProfilPicture = user.ProfilPicture;

            if (ModelState.IsValid)
            {
                var result = await _userManager.UpdateAsync(user);

                if (result.Succeeded)
                {
                    TempData["Success"] = "Your profile has updated!";
                    return(RedirectToAction("Index", "Profile", new { area = "Admin" }));
                }
            }

            return(View(appUser));
        }
Пример #2
0
        public async Task <IActionResult> UpdateUser(int id, AppUserEditDto model)
        {
            var user = await _appUserService.GetByIdAsync(id);

            var emailUser = await _appUserService.FindByEmail(model.Email);

            if (id != model.Id)
            {
                return(BadRequest("Id uyuşmazlığı"));
            }
            else if (emailUser != null && user.Id != emailUser.Id)
            {
                return(BadRequest(new { Error = "Bu e-posta kullanılmaktadır.", ErrorType = "EMAIL_IS_ALREADY_IN_USE" }));
            }
            else
            {
                user.Email    = model.Email.ToLower();
                user.Surname  = model.Surname;
                user.Name     = model.Name;
                user.UserName = model.UserName.ToLower();
                await _appUserService.UpdateAsync(user);

                return(NoContent());
            }
        }
        public async Task <IActionResult> Index(AppUserEditDto model)
        {
            if (ModelState.IsValid)
            {
                await _userManager.UpdateAsync(_mapper.Map <AppUser>(await _userManager.FindByEmailAsync(model.Email)));

                TempData["Success"] = "Bilgileriniz <strong>başarılı</strong> bir şekilde güncellenmiştir.";
                return(View());
            }
            return(View());
        }