示例#1
0
            public async Task <bool> Handle(Command request, CancellationToken cancellationToken)
            {
                User user = await _userManager.Users
                            .Include(u => u.Person)
                            .SingleOrDefaultAsync(u => u.NormalizedUserName == _userManager.NormalizeName(request.Username), cancellationToken);

                IList <string> currentRoles = await _userManager.GetRolesAsync(user);

                var isNewUser = currentRoles.Count == 0;

                if (!isNewUser)
                {
                    await _userManager.RemoveFromRolesAsync(user, currentRoles);
                }
                await _userManager.AddToRolesAsync(user, request.RoleNames);

                return(isNewUser);
            }