删除 table 后身份抛出 "Invalid object name 'dbo.AspNetUserClaims'"
Identity throws "Invalid object name 'dbo.AspNetUserClaims'" after removing that table
我已经从我的数据库中删除了 "AspNetUserClaims" table,因为我没有保存任何索赔信息。
创建用户后,我试图通过用户名获取用户信息,但 returns 出现错误:
"Invalid object name 'dbo.AspNetUserClaims'.".
IdentityResult result = await manager.CreateAsync(user, model.Password);
if (result.Succeeded)
{
var userInfo = manager.FindByName(user.UserName);
foreach (var myRole in myRoles)
{
manager.AddToRole(userInfo.Id, myRole.Name);
}
await AddToPreviousPasswordsAsync(user, user.PasswordHash);
}
在身份 2 的 UserManager class 中,Entity Framework-backed UserStore will ensure the claims are loaded for the requested user。
这会访问 AspNetUserClaims table,当您的数据库不包含 table.
时,它将引发异常
只是不要删除库所需的 table,或者在没有声明部分的情况下重建库。而你不想做后者,因为那样你就不会再从官方渠道收到任何更新,而必须手动修补它。这不是处理与安全相关的库的方法,或者通常与此相关的任何库。
我已经从我的数据库中删除了 "AspNetUserClaims" table,因为我没有保存任何索赔信息。
创建用户后,我试图通过用户名获取用户信息,但 returns 出现错误:
"Invalid object name 'dbo.AspNetUserClaims'.".
IdentityResult result = await manager.CreateAsync(user, model.Password);
if (result.Succeeded)
{
var userInfo = manager.FindByName(user.UserName);
foreach (var myRole in myRoles)
{
manager.AddToRole(userInfo.Id, myRole.Name);
}
await AddToPreviousPasswordsAsync(user, user.PasswordHash);
}
在身份 2 的 UserManager class 中,Entity Framework-backed UserStore will ensure the claims are loaded for the requested user。
这会访问 AspNetUserClaims table,当您的数据库不包含 table.
时,它将引发异常只是不要删除库所需的 table,或者在没有声明部分的情况下重建库。而你不想做后者,因为那样你就不会再从官方渠道收到任何更新,而必须手动修补它。这不是处理与安全相关的库的方法,或者通常与此相关的任何库。