コード例 #1
0
        public async Task <JsonResult> SaveChangePassword([Bind("Password,ConfirmPassword")] ApplicationUserVM boVM)
        {
            try
            {
                if (boVM.Password == null || boVM.ConfirmPassword == null)
                {
                    return(Json(new { result = false, message = "密码修改存在空值,请检查!" }));
                }
                if (boVM.Password != boVM.ConfirmPassword)
                {
                    return(Json(new { result = false, message = "新密码两次输入不相同,请检查!" }));
                }
                // 获取重置密码的令牌
                string resetToken = await _userManager.GeneratePasswordResetTokenAsync(TzUser);

                // 重置密码
                await _userManager.ResetPasswordAsync(TzUser, resetToken, boVM.Password);

                return(Json(new { result = true, message = "密码修改成功!" }));
            }
            catch (Exception)
            {
                return(Json(new { result = false, message = "系统出现异常,暂时无法修改密码,请反馈。" }));
            }
        }
コード例 #2
0
        public async Task <IActionResult> Personal()
        {
            var userName = User.Identity.Name;
            var user     = await _UserManager.FindByNameAsync(userName);

            ViewBag.UserLogonInformation = "";

            var userVM = new ApplicationUserVM(user);

            if (user != null)
            {
                ViewBag.UserLogonInformation = userVM.Name;
            }

            var uID   = Guid.Parse(user.Id);
            var image = _ImageRepository.GetAll().OrderByDescending(x => x.SortCode).Where(y => y.RelevanceObjectID == uID).FirstOrDefault();

            if (image != null)
            {
                userVM.AvatarPath = image.UploadPath;
            }

            return(View("../../Views/Account/UserChildren/Personal", userVM));
            //var userName = User.Identity.Name;
            //var user = await _UserManager.FindByNameAsync(userName);
            //ViewBag.UserLogonInformation = "";
            //if (user != null)
            //{
            //    ViewBag.UserLogonInformation = userName;
            //}
            //return View(new ApplicationUserVM(user));
        }
コード例 #3
0
        /// <summary>
        /// 保存人员数据
        /// </summary>
        /// <param name="perVM"></param>
        /// <returns></returns>
        public async Task <IActionResult> Save([Bind("ID,IsNew,UserName,Name,Description,MobileNumber,QQ,UserAddress,School")] ApplicationUserVM userVM)
        {
            var hasDuplicateNamePerson = await _userExtension.HasInstanceAsyn(x => x.Name == userVM.Name);

            if (hasDuplicateNamePerson && userVM.IsNew)     //判断是否已存在该人员
            {
                ModelState.AddModelError("", "人员名重复,无法添加"); //添加指定的错误信息
                return(View("~/Views/BusinessOrganization/Person/CreateOrEdit.cshtml", userVM));
            }
            var user = new ApplicationUser();

            if (!userVM.IsNew)
            {
                user = await _userExtension.GetSingleAsyn(x => x.Id == userVM.ID.ToString());
            }
            userVM.MapToOm(user);
            if (userVM.IsNew)
            {
                _userExtension.AddAndSave(user);
            }
            else
            {
                _userExtension.EditAndSave(user);
            }
            return(RedirectToAction("Index"));
        }
コード例 #4
0
        /// <summary>
        /// 以局部页的方式的方式,构建明细数据的处理
        /// </summary>
        /// <param name="id">人员对象的ID属性值</param>
        /// <returns></returns>
        public async Task <IActionResult> Detail(Guid id)
        {
            var user = await _userExtension.GetAll().Include(x => x.Person).Where(x => x.Id == id.ToString()).FirstOrDefaultAsync();

            var userVM = new ApplicationUserVM(user);

            //获取用户好友数量
            var userFriens = await _userFriendExtension.GetAll().Where(x => x.UserID == id.ToString()).ToListAsync();

            ViewBag.Friends = userFriens.Count;

            //获取社团数量
            var anAssociations = await _anAssociationExtension.GetAll().Include(x => x.User).Where(x => x.User.Id == id.ToString()).ToListAsync();

            var userAnAssociations = await _userAnAssociationExtension.GetAll().Include(x => x.User).Where(x => x.User.Id == id.ToString()).ToListAsync();

            ViewBag.AnAssociations = anAssociations.Count + userAnAssociations.Count;

            //获取活动数量
            var activitys = await _activityTermExtension.GetAll().Include(x => x.User).Where(x => x.User.Id == id.ToString() && x.Status == ActivityStatus.已结束).ToListAsync();

            var userActivitys = await _activityUserExtension.GetAll().Include(x => x.User).Where(x => x.User.Id == id.ToString() && x.ActivityTerm.Status == ActivityStatus.已结束).ToListAsync();

            ViewBag.Activitys = activitys.Count + userActivitys.Count;
            return(PartialView("~/Views/ApplicationOrganization/ApplicationUser/_Detail.cshtml", userVM));
        }
コード例 #5
0
        public async Task <IActionResult> RegisterUserAsync([FromBody] ApplicationUserVM userVM)
        {
            try
            {
                var exist = await _accountServices.IsExist(userVM.UserName);

                if (!exist.IsSuccess)
                {
                    var result = await _accountServices.RegisterAccountAsync(userVM);

                    if (result.IsSuccess)
                    {
                        return(Ok(result));
                    }
                    return(BadRequest(result));
                }
                else
                {
                    return(BadRequest("Invalid Details"));
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
コード例 #6
0
        public List <ReviewsVM> GetAll()
        {
            List <ReviewsVM>      reviewsVM = new List <ReviewsVM>();
            IEnumerable <Reviews> reviews   = _unitOfWork.Reviews.GetAll();

            MapperConfiguration filmConfig = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <Films, FilmsVM>();
            });
            IMapper filmMap = filmConfig.CreateMapper();

            MapperConfiguration userConfig = new MapperConfiguration(cfg =>
            {
                cfg.CreateMap <ApplicationUser, ApplicationUserVM>();
            });
            IMapper userMap = userConfig.CreateMapper();

            foreach (Reviews f in reviews) //
            {
                FilmsVM           filmVM  = filmMap.Map <Films, FilmsVM>(f.Films);
                ApplicationUserVM genreVM = userMap.Map <ApplicationUser, ApplicationUserVM>(f.Users);

                reviewsVM.Add(new ReviewsVM {
                    Id = f.Id, IdFilm = f.IdFilm, IdAuthor = f.IdAuthor, Date = f.Date, Feedback = f.Feedback, Films = filmVM, Users = genreVM
                });
            }

            return(reviewsVM);
        }
コード例 #7
0
        public IActionResult Edit(string id)
        {
            if (id == null)
            {
                return(NotFound());
            }
            var user = _unitOfWork.ApplicationUser.GetFirstOrDefault(u => u.Id == id, includeProperties: "Department");

            if (user == null)
            {
                return(NotFound());
            }
            user.Role = _userManager.GetRolesAsync(user).Result.FirstOrDefault();

            ApplicationUserVM applicationUserVM = new ApplicationUserVM()
            {
                ApplicationUser = user,
                RoleList        = _roleManager.Roles.Select(c => new SelectListItem
                {
                    Text  = c.Name,
                    Value = c.Name
                }),
                DepartmentList = _unitOfWork.Department.GetAll().Select(d => new SelectListItem
                {
                    Text     = d.Name,
                    Value    = d.Id.ToString(),
                    Selected = (d.Name == user.Department.Name ? true : false)
                })
            };

            return(View(applicationUserVM));
        }
コード例 #8
0
        public void UpdateUserPoints(ApplicationUserVM u)
        {
            ApplicationUser user = _userManager.FindByIdAsync(u.Id).Result;

            user.Points = u.Points;
            _userManager.UpdateAsync(user);
        }
コード例 #9
0
        public async Task <IActionResult> CreateNewUser(ApplicationUserVM applicationUser)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var checkExistsRootUser = _userManager.Users.FirstOrDefault(o => o.IsRoot == true);

            if (checkExistsRootUser == null)
            {
                return(BadRequest("ROOT_EXISTS"));
            }
            var applicationUserInit = new ApplicationUser
            {
                UserName = applicationUser.UserName,
                Email    = applicationUser.Email,
                IsRoot   = false
            };

            var result = await _userManager.CreateAsync(applicationUserInit, applicationUser.Password);

            if (!result.Succeeded)
            {
                return(BadRequest(result.Errors));
            }
            return(Ok(applicationUser));
        }
コード例 #10
0
        public async Task <IActionResult> Login(ApplicationUserVM applicationUser)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            var user = await _userManager.FindByNameAsync(applicationUser.Email);

            if (user == null)
            {
                return(Unauthorized("USERNAME_OR_PASSWORD_INVALID"));
            }
            var signInResult = await _signInManager.CheckPasswordSignInAsync(user, applicationUser.Password, false);

            if (signInResult.Succeeded == false)
            {
                return(Unauthorized("USERNAME_OR_PASSWORD_INVALID"));
            }

            var roles = await _userManager.GetRolesAsync(user);

            var token = JWTUtils.GenerateJWT(user, roles, _configuration["Jwt:Key"], _configuration["Jwt:Issuer"]);

            var response = new
            {
                Token = token,
                User  = user
            };

            return(Ok(response));
        }
コード例 #11
0
        public async Task <IActionResult> InitRootUser(ApplicationUserVM applicationUserVM)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            var existingRootUser = _userManager.Users.FirstOrDefault(o => o.IsRoot == true);

            if (existingRootUser != null)
            {
                return(BadRequest("ROOT_EXISTED"));
            }

            var applicationUser = new ApplicationUser
            {
                UserName = applicationUserVM.UserName,
                Email    = applicationUserVM.Email,
                IsRoot   = true
            };

            var result = await _userManager.CreateAsync(applicationUser, applicationUserVM.Password);

            if (!result.Succeeded)
            {
                return(BadRequest(result.Errors));
            }
            return(Ok(applicationUser));
        }
コード例 #12
0
        public async Task <JsonResult> SaveChangeProfile([Bind("Name,MobileNumber,QQNumber,EMail,Description")] ApplicationUserVM boVM)
        {
            if (string.IsNullOrEmpty(boVM.EMail))
            {
                return(Json(new { result = false, message = "电子邮件必须填写!" }));
            }
            //var entity = await _userManager.FindByIdAsync(boVM.Id.ToString());
            var thisUser = await _userManager.FindByNameAsync(User.Identity.Name);

            if (thisUser != null)
            {
                thisUser.ChineseFullName = EncodeFilterHelper.EncodeHtmlToNull(boVM.Name);
                thisUser.MobileNumber    = boVM.MobileNumber;
                thisUser.Email           = EncodeFilterHelper.EncodeHtml(boVM.EMail);
                thisUser.QQNumber        = boVM.QQNumber;
                thisUser.Description     = EncodeFilterHelper.EncodeHtmlToNull(boVM.Description);

                var update = await _userManager.UpdateAsync(thisUser);

                if (update.Succeeded)
                {
                    var thisIntegrity = UserInfoIntegrity() + "%";
                    var thisUsername  = GetCurrUserName();
                    return(Json(new { result = true, integrity = thisIntegrity, username = thisUsername }));
                }
                return(Json(new { result = false, message = "修改失败" }));
            }
            return(Json(new { result = false, message = "修改失败" }));
        }
コード例 #13
0
        public IActionResult RequestPost(int postId)
        {
            ApplicationUserVM user = _accountService.GetByUserName(User.Identity.Name);
            PostVM            post = _postService.GetAll().Find(x => x.Id == postId);

            if (post != null && user.Points >= post.Subcategory.Points)
            {
                IEnumerable <OrderVM> orders = _orderService.GetAll().Where(x => x.PostId == postId && x.UserId == user.Id);//db.Orders.Where(i => i.PostId == postId).ToList().Where(i => i.UserId == userId).ToList(); //all orders from this postid and userid
                if (orders.Count() == 0)
                {
                    _orderService.Create(new OrderVM
                    {
                        PostId = postId,
                        UserId = user.Id,
                        Post   = _postService.GetAll().FirstOrDefault(x => x.Id == postId),
                        User   = _accountService.GetById(user.Id)
                    });
                }
                else
                {
                    TempData["Message"] = "Вы не можете запросить повторно один и тот же пост";
                }
            }
            else
            {
                TempData["Message"] = "У вас недостаточно бонусов";
            }

            return(RedirectToAction("RequestPost"));
        }
コード例 #14
0
 public TzChatUser(ApplicationUserVM user)
 {
     this.UserName = user.UserName;
     this.UserId   = user.Id;
     this.Nickname = user.Nickname;
     this.Remark   = user.Remark;
     this.Avatar   = user.Avatar;
 }
コード例 #15
0
        public ActionResult Profile()
        {
            ApplicationUserVM user = _accountService.GetByUserName(User.Identity.Name);

            ViewBag.User = user;

            return(View());
        }
コード例 #16
0
        public async Task <IActionResult> CreateOrEdit(ApplicationUserVM boVM)
        {
            var functionName = "新建系统用户数据";

            if (ModelState.IsValid)
            {
                if (boVM.IsNew)
                {
                    // 检验用户名的唯一性
                    var isUniquelyForUserName = await _boVMService.IsUniquelyForUserName(boVM.UserName);

                    if (!isUniquelyForUserName)
                    {
                        ModelState.AddModelError("UserName", "用户名重复,请重新输入一个。");
                    }
                    else
                    {
                        // 保存数据
                        var x = await _boVMService.SaveBo(boVM);

                        if (x)
                        {
                            return(RedirectToAction("CommonList"));
                        }
                    }
                }
                else
                {
                    // 保存数据
                    var x = await _boVMService.SaveBo(boVM);

                    if (x)
                    {
                        return(RedirectToAction("CommonList"));
                    }
                }
            }


            if (!boVM.IsNew)
            {
                functionName = "编辑系统用户数据:" + boVM.UserName + "(" + boVM.Name + ")";
            }

            await _boVMService.SetApplicationRoleItemCollection(boVM);

            ViewData["ModuleName"]   = "系统用户管理";
            ViewData["FunctionName"] = functionName;
            if (boVM.IsNew)
            {
                return(PartialView("_Create", boVM));
            }
            else
            {
                return(PartialView("_Edit", boVM));
            }
        }
コード例 #17
0
ファイル: TzChatRepository.cs プロジェクト: XiaoMoDonnie/Blog
        /// <summary>
        /// 获取指定用户(视图模型)
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public async Task <ApplicationUserVM> GetUserVM(Guid id)
        {
            var userVM = new ApplicationUserVM(await GetUserByIdAsync(id));
            var avatar = _businessImage.GetAll().FirstOrDefault(x => x.RelevanceObjectId == userVM.Id);

            userVM.Avatar     = avatar.RelativePath;
            userVM.UserAvatar = avatar;
            return(userVM);
        }
コード例 #18
0
 public YZ_CommodityCommentVM(YZ_CommodityComment bo)
 {
     Id          = bo.Id;
     Commodity   = bo.Commodity;
     Name        = bo.Name;
     Description = bo.Description;
     CreateTime  = bo.CreateTime;
     CommentUser = new ApplicationUserVM(bo.CommentUser);
 }
コード例 #19
0
        public static void Update(ApplicationUserVM item)
        {
            ApplicationUser dbItem = RepositoryBase <ApplicationUser> .GetSingleById(item.Id);

            dbItem.UpdateApplicationUser(item);
            RepositoryBase <ApplicationUser> .Update(dbItem);

            RepositoryBase <ApplicationUser> .SaveChanges();
        }
コード例 #20
0
        public ApplicationUserVM GetUserVM()
        {
            var userVM = new ApplicationUserVM(GetUser());
            var avatar = _businessImage.GetAll().FirstOrDefault(i => i.RelevanceObjectId == Guid.Parse(GetUser().Id) && i.Type == ImageType.Avatars);

            userVM.Avatar     = avatar;            //可以直接用这个 包含了头像的所有信息
            userVM.AvatarPath = avatar.UploadPath; //也可以用这个但是包含了头像的路径
            return(userVM);
        }
コード例 #21
0
ファイル: TzChatRepository.cs プロジェクト: XiaoMoDonnie/Blog
        /// <summary>
        /// 获取当前用户视图模型
        /// </summary>
        /// <returns></returns>
        public ApplicationUserVM UserVM()
        {
            var userVM = new ApplicationUserVM(User());
            var avatar = _businessImage.GetAll().FirstOrDefault(x => x.RelevanceObjectId == userVM.Id);

            userVM.Avatar     = avatar.RelativePath;
            userVM.UserAvatar = avatar;

            return(userVM);
        }
コード例 #22
0
        public IActionResult Edit(ApplicationUserVM applicationUserVM)

        {
            if (ModelState.IsValid)
            {
                var userToUpdate = _unitOfWork.ApplicationUser.GetFirstOrDefault(u => u.Id == applicationUserVM.ApplicationUser.Id);

                if (userToUpdate != null)
                {
                    userToUpdate.Name         = applicationUserVM.ApplicationUser.Name;
                    userToUpdate.Email        = applicationUserVM.ApplicationUser.Email;
                    userToUpdate.DepartmentId = applicationUserVM.ApplicationUser.DepartmentId;
                }

                var result = _userManager.UpdateAsync(userToUpdate).Result;


                if (result.Succeeded)
                {
                    //try adding to role if user update successful
                    if (_roleManager.RoleExistsAsync(applicationUserVM.ApplicationUser.Role).Result)
                    {
                        //only update role if changed
                        if (!_userManager.IsInRoleAsync(userToUpdate, applicationUserVM.ApplicationUser.Role).Result)
                        {
                            var currentRole = _userManager.GetRolesAsync(userToUpdate).Result;
                            _userManager.RemoveFromRolesAsync(userToUpdate, currentRole).Wait();
                            _userManager.AddToRoleAsync(userToUpdate, applicationUserVM.ApplicationUser.Role).Wait();
                        }
                    }

                    return(RedirectToAction(nameof(Index)));
                }
                else
                {
                    ModelState.AddModelError("", "Error updating user");
                }
            }
            //return to edit page with proper viewmodel if there are issues.
            applicationUserVM.RoleList = _roleManager.Roles.Select(c => new SelectListItem
            {
                Text     = c.Name,
                Value    = c.Name,
                Selected = (c.Name == applicationUserVM.ApplicationUser.Role ? true : false)
            });
            applicationUserVM.DepartmentList = _unitOfWork.Department.GetAll().Select(d => new SelectListItem
            {
                Text     = d.Name,
                Value    = d.Id.ToString(),
                Selected = (d.Id == applicationUserVM.ApplicationUser.DepartmentId ? true : false)
            });


            return(View(applicationUserVM));
        }
コード例 #23
0
ファイル: TzChatRepository.cs プロジェクト: XiaoMoDonnie/Blog
        /// <summary>
        /// 获取头像
        /// </summary>
        /// <param name="userVM">用户视图模型</param>
        /// <returns></returns>
        public async Task <ApplicationUserVM> GetUserVMContainAvatar(ApplicationUserVM userVM)
        {
            var images = await _businessImage.GetAllAsyn();

            var avatar        = images.FirstOrDefault(x => x.RelevanceObjectId == userVM.Id && x.Type.Equals(BusinessImageEnum.Avatars));
            var defaultAvatar = "../images/chatAvatars/defaultAvatar.jpg";

            userVM.Avatar    = string.IsNullOrEmpty(avatar?.RelativePath) ? defaultAvatar : avatar?.RelativePath;
            userVM.MinAvatar = string.IsNullOrEmpty(avatar?.MinRelativePath) ? defaultAvatar : avatar?.MinRelativePath;
            return(userVM);
        }
コード例 #24
0
        public JsonResult AssignApplication(string UserId, ApplicationUserVM applicationUserVM)
        {
            var myContent   = JsonConvert.SerializeObject(applicationUserVM);
            var buffer      = System.Text.Encoding.UTF8.GetBytes(myContent);
            var byteContent = new ByteArrayContent(buffer);

            byteContent.Headers.ContentType = new MediaTypeHeaderValue("application/json");
            var result = client.PostAsync("AddToApplication/" + UserId, byteContent).Result;

            return(Json(new { data = result }));
        }
コード例 #25
0
        private async Task UpdateUserClaimsAsync(ApplicationUserVM applicationUserVM, ApplicationUser applicationUser)
        {
            await UpdateUserClaimAsync(applicationUser, UserConstants.Name, applicationUserVM.Name).ConfigureAwait(false);

            await UpdateUserClaimAsync(applicationUser, UserConstants.FirstName, applicationUserVM.FirstName).ConfigureAwait(false);

            await UpdateUserClaimAsync(applicationUser, UserConstants.MiddleName, applicationUserVM.MiddleName).ConfigureAwait(false);

            await UpdateUserClaimAsync(applicationUser, UserConstants.CanLogin, applicationUserVM.CanLogin? "1" : "0").ConfigureAwait(false);

            await UpdateUserClaimAsync(applicationUser, UserConstants.DateOfBirth, applicationUserVM.DateOfBirth?.ToString(FuelSettings.DATEFORMAT)).ConfigureAwait(false);
        }
コード例 #26
0
ファイル: TzChatRepository.cs プロジェクト: XiaoMoDonnie/Blog
        /// <summary>
        /// 获取所有用户VM
        /// </summary>
        /// <returns></returns>
        public List <ApplicationUserVM> GetUsersVM()
        {
            var query = _userManager.Users;
            var users = new List <ApplicationUserVM>();

            foreach (var item in query)
            {
                var user = new ApplicationUserVM(item);
                users.Add(user);
            }
            return(users);
        }
コード例 #27
0
        public async Task <IActionResult> Register(ApplicationUserVM model)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    return(View(model));
                }

                using (var httpClient = new HttpClient())
                {
                    httpClient.BaseAddress = new Uri(_apiRequestUri.BaseUri);
                    httpClient.DefaultRequestHeaders.Accept.Clear();
                    httpClient.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

                    var user = new ApplicationUserVM()
                    {
                        Email           = model.Email,
                        Password        = model.Password,
                        ConfirmPassword = model.ConfirmPassword,
                        PhoneNumber     = model.PhoneNumber,
                        UserName        = model.UserName
                    };

                    var uri = string.Format(_apiRequestUri.Register, user);

                    StringContent content = new StringContent(JsonConvert.SerializeObject(model));

                    //HttpResponseMessage response = await httpClient.PostAsync(uri, content);
                    HttpResponseMessage response = (HttpResponseMessage)null;

                    response = await httpClient.PostAsJsonAsync(uri, model);

                    if (response.IsSuccessStatusCode)
                    {
                        return(RedirectToAction("Login"));
                        //return RedirectToAction("GetStudentById", new { id = student.ID });
                    }
                    if (response.StatusCode == System.Net.HttpStatusCode.BadRequest)
                    {
                        ModelState.AddModelError("", await response.Content.ReadAsStringAsync());
                    }
                }
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            return(View());
        }
コード例 #28
0
        public async Task <IActionResult> Get(string id)
        {
            var user = await _userManager.FindByIdAsync(id);

            if (user != null)
            {
                ApplicationUserVM userVM = Mapper.Map <ApplicationUser, ApplicationUserVM>(user);
                return(new OkObjectResult(userVM));
            }
            else
            {
                return(NotFound());
            }
        }
コード例 #29
0
        public async Task <IActionResult> Register(RegisterVM model)
        {
            if (ModelState.IsValid)
            {
                ApplicationUserVM newUser = new ApplicationUserVM
                {
                    UserName    = model.Name,
                    Email       = model.Email,
                    PhoneNumber = model.PhoneNumber
                };

                MapperConfiguration config = new MapperConfiguration(cfg =>
                {
                    cfg.CreateMap <ApplicationUserVM, ApplicationUser>();
                });
                IMapper         map    = config.CreateMapper();
                ApplicationUser user   = map.Map <ApplicationUserVM, ApplicationUser>(newUser);
                IdentityResult  result = await _userManager.CreateAsync(user, model.Password);

                string rgx = @"^(?=.+[0-9])(?=.+[!@#$%^&*])(?=.+[a-z])(?=.+[A-Z])[0-9a-zA-Z!@#$%^&*]{6,}$";

                //if (Regex.IsMatch(model.Password, rgx))
                //{

                // IdentityResult result = await _userManager.CreateAsync(user, model.Password);

                if (result.Succeeded)
                {
                    bool roleCheck = await _roleManager.RoleExistsAsync("User");

                    if (!roleCheck)
                    {
                        IdentityResult roleResult = await _roleManager.CreateAsync(new IdentityRole("User"));
                    }
                    await _userManager.AddToRoleAsync(user, "User");

                    SendMessage(user);
                    return(PartialView("DisplayEmail"));
                    // }
                }
                else
                {
                    ModelState.AddModelError("", " Пароль от 6 символов с использованием цифр, спец. символов, латиницы, наличием строчных и прописных символов.");
                }

                ModelState.AddModelError("", "Пользователь с таким Еmail или именем уже существует");
            }
            return(View(model));
        }
コード例 #30
0
        public IActionResult CreatePost(RegisterPostViewModel model, IEnumerable <IFormFile> images)
        {
            if (ModelState.IsValid)
            {
                ApplicationUserVM user = _accountService.GetByUserName(User.Identity.Name);
                _postService.CreatePost(model, images, user);
                return(RedirectToAction("Posts"));
            }
            else
            {
                GetCacheData();

                return(View());
            }
        }