【问题标题】:.net Core 5 _userManager.RemoveFromRolesAsync error: Username 'XXXX' is invalid, can only contain letters or digits.net Core 5 _userManager.RemoveFromRolesAsync 错误:用户名“XXXX”无效,只能包含字母或数字
【发布时间】:2023-04-04 12:11:01
【问题描述】:

我在 .Net 5.0 中使用 Identity 有以下代码:

        var user = await _userManager.FindByIdAsync(userId);
        if (user == null)
        {
            return View();
        }
        var roles = await _userManager.GetRolesAsync(user);
        var result = await _userManager.RemoveFromRolesAsync(user, roles.ToArray());

UserID 是一个有效的用户 ID,并返回一个有效的 user roles 正确填充了属于 user 的角色 RemoveFromRolesAsync 失败并出现以下错误:

Username 'xxx' is invalid, can only contain letters or digits.

有什么想法吗?

【问题讨论】:

    标签: asp.net-mvc .net-core c#-5.0


    【解决方案1】:

    添加

    options.User.AllowedUserNameCharacters = @"abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789-._@+/\"
    

    IdentityHostingStartup.cs
    

    注意:似乎允许的字符匹配区分大小写...

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-08-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-02-23
      • 1970-01-01
      相关资源
      最近更新 更多