これを使用して、新しく作成したユーザーを役割に追加しています。
var db = new ApplicationDbContext();
ApplicationDbContext context = new ApplicationDbContext();
var userStore = new UserStore<ApplicationUser>(context);
var userManager = new UserManager<ApplicationUser>(userStore);
userManager.AddToRole(user.Id, model.UserRole);
私のソリューションでは、ユーザー名 = メールです。
ユーザー名/電子メールに記号 (+、-、またはそのようなもの) が含まれていると、ユーザーがロールに追加されないことがわかりました。私が得るエラーは " User name x is invalid, can only contain letters or digits.
"です。ユーザーは正常に追加されます。失敗するのは AddToRole だけです。
しかし、私はその理由を理解できません。
AllowOnlyAlphanumericUserNames
IdentityConfig.cs で false に設定されている
何か案は?