public async Task <IActionResult> Create([Bind("ID,Username,Password,ConfirmPassword, Name,Avatar,RememberToken, Roles, Permissions")] UserViewModel userViewModel, IFormFile Avatar) { User user = userViewModel.GetEntity(); if (ModelState.IsValid) { //上传头像 long size = Avatar.Length; await _storage.Put(Avatar, "images/avatar"); string url = _storage.GetFileUrl(); if (url.Length > 0) { user.Avatar = url; } HashPair hashPair = Encrypt.Password(userViewModel.Password); user.Password = hashPair.Hashed; user.Salt = hashPair.Salt; _context.Add(user); rbac.AddUserRoles(user, userViewModel.Roles); rbac.AddUserPermissions(user, userViewModel.Permissions); await _context.SaveChangesAsync(); return(RedirectToAction(nameof(Index))); } else { GetErrorListFromModelState(ModelState); } return(Create()); }