BlazorServerusingIdentity-Gettinguserinfoincode
创始人
2024-12-21 15:30:32
0

使用Blazor Server和Identity获取用户信息的代码解法

首先,在Blazor Server应用程序中安装以下NuGet软件包:

Microsoft.AspNetCore.Authorization

Microsoft.AspNetCore.Components.Authorization

Microsoft.AspNetCore.Identity.EntityFrameworkCore

Microsoft.EntityFrameworkCore

Microsoft.EntityFrameworkCore.SqlServer

Microsoft.EntityFrameworkCore.Tools

接下来,创建一个Identity数据库并添加一个用户:

使用以下命令创建数据库:

Add-Migration InitialCreate

Update-Database

创建一个页面,以获取用户信息。编辑“Index.razor”并添加以下代码:

@page "/"

@using Microsoft.AspNetCore.Components.Authorization @using Microsoft.AspNetCore.Identity

@inject AuthenticationStateProvider AuthenticationStateProvider @inject UserManager UserManager

@if (user != null) {

Welcome, @user.Email!

} else {

You are not logged in.

}

@code { private IdentityUser user;

protected override async Task OnInitializedAsync()
{
    var authState = await AuthenticationStateProvider.GetAuthenticationStateAsync();
    var user = await UserManager.GetUserAsync(authState.User);

    if (user != null)
    {
        this.user = user;
    }
}

}

在代码中,我们注入了AuthenticationStateProvider和UserManager服务,以获取对AuthenticationState和IdentityUser的访问。OnInitializedAsync生命周期方法用于获取用户信息并将其分配给一个私有字段“user”。

最后,我们在页面上使用该用户的信息。如果用户处于登录状态,则显示其电子邮件地址。否则,显示“您未登录”。

相关内容

热门资讯

四分钟操作!宁夏划水辅助,宝宝... 四分钟操作!宁夏划水辅助,宝宝游戏辅助,德州教程(有挂详情)-哔哩哔哩进入游戏-大厅左侧-新手福利-...
第8分钟总结!边锋干瞪眼脚本,... 第8分钟总结!边锋干瞪眼脚本,开心泉州免费辅助器,技巧教程(有挂解密)-哔哩哔哩开心泉州免费辅助器辅...
九分钟指引!川娱竞技插件,冰球... 九分钟指引!川娱竞技插件,冰球突破辅助软件,细节揭秘(有挂方法)-哔哩哔哩1、玩家可以在冰球突破辅助...
第三分钟阶段!上饶中至能操控吗... 第三分钟阶段!上饶中至能操控吗,兴动互娱辅助工具,必胜教程(证实有挂)-哔哩哔哩1、玩家可以在上饶中...
三分钟窍要!飞驰娱乐软件科技,... 三分钟窍要!飞驰娱乐软件科技,九酷众游软件,我来教教你(有挂透视)-哔哩哔哩1、首先打开飞驰娱乐软件...
第一分钟指南!传送屋激k万能辅... 第一分钟指南!传送屋激k万能辅助器app,海贝之城有辅助吗,总结教程(有挂方法)-哔哩哔哩;1、完成...
4分钟教材!天天炫斗辅助工具,... 4分钟教材!天天炫斗辅助工具,518互游辅助,新2025版(证实有挂)-哔哩哔哩1、游戏颠覆性的策略...
第2分钟秘籍!纳祥游戏科技,竹... 第2分钟秘籍!纳祥游戏科技,竹间茶馆辅助,新版2025教程(有挂工具)-哔哩哔哩小薇(透视辅助)致您...
八分钟妙招!微信小程序雀神广东... 八分钟妙招!微信小程序雀神广东辅助器,微信边锋辅助下载,总结教程(有挂方针)-哔哩哔哩亲,关键说明,...
4分钟课程!微新欢乐卡五星辅助... 4分钟课程!微新欢乐卡五星辅助,友友联盟辅助脚本,安装教程(有挂讲解)-哔哩哔哩进入游戏-大厅左侧-...