gpt4 book ai didi

c# - UserManager.CreateAsync .Success 总是返回 false

转载 作者:太空宇宙 更新时间:2023-11-03 21:00:50 25 4
gpt4 key购买 nike

我正在尝试使用以下函数以编程方式将用户添加到我的 ASP.Net MVC 5.0 应用程序中的 AspNetUsers 表:

private async Task AddUser(DataImportMember member)
{
var user = new ApplicationUser
{
UserName = member.Email,
Email = member.Email,
UserType = UserType.IsMember
};

var password = RandomPassword.Generate();
var result = await this.UserManager.CreateAsync(user, password);
if (result.Succeeded)
{
await this.UserManager.AddToRoleAsync(user.Id, MyApp.IsMember);
}
}

但每当我调用 this.UserManager.CreateAsync 时,result.Succeed 始终为 false。我检查了 AspNetUsers 表,正如预期的那样,没有添加用户。

有什么办法可以找出问题所在以及如何解决吗?

谢谢。

最佳答案

UserManager.CreateAsync 返回一个 IdentityResult,其中还包含操作未成功的任何错误。您应该检查结果错误消息以找出操作失败的原因。

var result = await this.UserManager.CreateAsync(user, password);
if (result.Succeeded) {
await this.UserManager.AddToRoleAsync(user.Id, MyApp.IsMember);
} else {
var errors = result.Errors;
var message = string.Join(", ", errors);
ModelState.AddModelError("", message);
}

关于c# - UserManager.CreateAsync .Success 总是返回 false,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45725544/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com