コード例 #1
0
        public async Task <IActionResult> Create(CreateOrEditUserViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
                var user = viewModel.User;

                var dbUser = new User
                {
                    FirstName  = user.FirstName,
                    LastName   = user.LastName,
                    Email      = user.Email,
                    Phone      = user.Phone,
                    Password   = user.Password,
                    AutoBidAmt = user.AutoBidAmt
                };

                _context.Add(dbUser);
                await _context.SaveChangesAsync();

                TempData["SuccessMessage"] = $"Successfully created user #{user.UserId.ToString()}.";

                return(RedirectToAction("Index"));
            }

            return(await CreateOrEdit(viewModel));
        }
コード例 #2
0
        public async Task <IActionResult> Edit(int id, CreateOrEditUserViewModel viewModel)
        {
            var user = viewModel.User;

            if (id != user.UserId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(user);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!UserExists(user.UserId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }

                TempData["SuccessMessage"] = $"Successfully edited user #{user.UserId.ToString()}.";

                return(RedirectToAction("Index"));
            }
            return(await CreateOrEdit(viewModel));
        }
コード例 #3
0
        // GET: Users/Create
        public async Task <IActionResult> Create()
        {
            var viewModel = new CreateOrEditUserViewModel
            {
                User = new User()
            };

            return(await CreateOrEdit(viewModel));
        }
コード例 #4
0
ファイル: UserController.cs プロジェクト: JuneVan/TalentPool
        public async Task <IActionResult> Create(CreateOrEditUserViewModel model)
        {
            if (ModelState.IsValid)
            {
                var user = Mapper.Map <User>(model);
                // 上传头像
                _ = UploadProfile(user);
                // 设置默认密码
                if (string.IsNullOrEmpty(model.Password))
                {
                    model.Password = UserDefaults.DefaultPassword;
                }
                await _userManager.CreateAsync(user, model.Password);

                Notifier.Success("你已成功创建一个新的用户记录。");
                return(RedirectToAction(nameof(List)));
            }
            return(View(model));
        }
コード例 #5
0
        private async Task <IActionResult> CreateOrEdit(CreateOrEditUserViewModel viewModel)
        {
            var roles = await _context.Roles.AsNoTracking().ToListAsync();

            var selectedRoleId = viewModel.User.RoleId;

            var roleViewModelsQuery =
                from role in roles
                select new SelectListItem
            {
                Value    = role.Id.ToString(),
                Text     = role.Name,
                Selected = role.Id == selectedRoleId
            };

            viewModel.Roles = roleViewModelsQuery.ToList();

            return(View(viewModel));
        }
コード例 #6
0
ファイル: UserController.cs プロジェクト: JuneVan/TalentPool
        public async Task <IActionResult> Edit(CreateOrEditUserViewModel model)
        {
            var user = await _userManager.FindByIdAsync(model.Id.ToString());

            if (user == null)
            {
                return(NotFound(model.Id));
            }

            if (ModelState.IsValid)
            {
                _ = Mapper.Map(model, user);
                // 上传头像
                _ = UploadProfile(user);
                await _userManager.UpdateAsync(user);

                Notifier.Success("你已成功编辑一条用户记录。");
                return(RedirectToAction(nameof(List)));
            }
            return(View(model));
        }
コード例 #7
0
        // GET: Users/Edit/5
        public async Task <IActionResult> Edit(int?id)
        {
            if (id == null)
            {
                return(NotFound());
            }

            var user = await _context.Users.SingleOrDefaultAsync(m => m.UserId == id);

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

            var viewModel = new CreateOrEditUserViewModel
            {
                User = user
            };

            return(await CreateOrEdit(viewModel));
        }
コード例 #8
0
        public void CreateOrUpdateUser(CreateOrEditUserViewModel model)
        {
            if (_userView.ModelIsValid)
            {
                UserViewModel user = _users.SingleOrDefault(x => x.Id == model.Id);

                if (user == null)
                {
                    _users.Add(new UserViewModel
                    {
                        Id         = Guid.NewGuid().ToString(),
                        FirstName  = model.FirstName,
                        LastName   = model.LastName,
                        Department = model.Department,
                        Sex        = model.Sex
                    });
                }
                else
                {
                    user.FirstName  = model.FirstName;
                    user.LastName   = model.LastName;
                    user.Department = model.Department;
                    user.Sex        = model.Sex;
                }

                _userView.GridInitialization();

                FillGridWithUsers();

                _userView.SetInputFieldsToDefault();
            }
            else
            {
                MessageBox.Show("asd", "Információ!", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }