コード例 #1
0
        public async Task <IActionResult> EditProfile(string username, UserEditProfileServiceModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            User user = await this.userManager.FindByNameAsync(username);

            if (user == null)
            {
                TempData.AddErrorMessage(string.Format(EntityNotFound, username));

                return(this.RedirectToHomeIndex());
            }

            bool editProfileResult = await this.userService.EditProfileAsync(user, model.FullName, model.Email, model.Address, model.PhoneNumber, model.BirthDate);

            if (!editProfileResult)
            {
                TempData.AddWarningMessage(EntityNotModified);

                return(View(model));
            }

            TempData.AddSuccessMessage(UserEditProfileSuccessMessage);

            return(RedirectToAction(nameof(Profile), new { username }));
        }
コード例 #2
0
        public async Task <IActionResult> EditProfile(UserEditProfileServiceModel model)
        {
            if (!ModelState.IsValid)
            {
                return(View(model));
            }

            User user = await this.userManager.GetUserAsync(User);

            if (user == null)
            {
                return(NotFound());
            }

            bool editProfileResult = await this.userService.EditProfileAsync(user, model.Name, model.Email, model.Birthdate);

            if (!editProfileResult)
            {
                TempData.AddErrorMessage($"Error. Your profile could not be changed. Please try again.");
                return(View(model));
            }

            TempData.AddSuccessMessage($"Your profile has been changed.");
            return(RedirectToAction(nameof(Profile), new { username = User.Identity.Name }));
        }
コード例 #3
0
        public async Task <IActionResult> EditProfile(string username)
        {
            User user = await this.userManager.FindByNameAsync(username);

            if (user == null)
            {
                return(NotFound());
            }

            UserEditProfileServiceModel model = await this.userService.GetEditProfileByIdAsync(user.Id);

            return(View(model));
        }
コード例 #4
0
        public async Task <IActionResult> EditProfile(string username)
        {
            User user = await this.userManager.FindByNameAsync(username);

            if (user == null)
            {
                TempData.AddErrorMessage(string.Format(EntityNotFound, username));

                return(this.RedirectToHomeIndex());
            }

            UserEditProfileServiceModel model = await this.userService.GetEditProfileByUsernameAsync(username);

            return(View(model));
        }
コード例 #5
0
        public async Task GetEditProfileByUsernameAsync_WithUsername_ShouldReturnValidViewModel()
        {
            // Arrange
            FitStoreDbContext database = this.Database;

            DatabaseHelper.SeedData(database);

            IUserService userService = new UserService(database, null);

            // Act
            UserEditProfileServiceModel result = await userService.GetEditProfileByUsernameAsync(username);

            // Assert
            result.Address.Should().Be("Address 1");
            result.Email.Should().Be("Email 1");
            result.PhoneNumber.Should().Be("Phone 1");
        }