【发布时间】:2021-06-30 06:34:21
【问题描述】:
应用程序是 Blazor Server .NET Core 5.0
我正在使用 .NET Core 的身份系统,但遇到了问题。我想将该人的名字与身份一起存储,以便我可以轻松调用它。
目前我有一个覆盖基本标识的类:
public class ApplicationUser : IdentityUser
{
public ApplicationUser() : base() { }
[StringLength(100)]
public string FirstName { get; set; }
[StringLength(100)]
public string LastName { get; set; }
}
我的 startup.cs 有:
services.AddDefaultIdentity<ApplicationUser>(options => {
options.SignIn.RequireConfirmedAccount = true;
}
)
在我看来,这应该迫使程序的智能感知理解 ApplicationUser 是寻找身份时的默认类。
但是,当我尝试调用时:
var authState = await AuthenticationStateProvider.GetAuthenticationStateAsync();
var user = authState.User;
它只返回“IdentityUser”数据,而不是我的自定义 ApplicationUser 类。
我缺少 AuthenticationStateProvider 返回的内容或缺少类型转换吗?
另外,如果这完全不正确,我应该对声明执行此操作吗?如果是这样,我找不到有效使用 Blazor Server 声明的具体方法。
【问题讨论】:
-
WebAssembly 还是服务器端 blazor?
-
@Brian,它是服务器端的
标签: c# asp.net-identity blazor claims-based-identity