在ASP.NET Core 3.1中,可以通过以下步骤获取PageModel中的当前登录用户:
services.AddAuthentication(CookieAuthenticationDefaults.AuthenticationScheme)
.AddCookie(options =>
{
options.LoginPath = "/Account/Login";
options.AccessDeniedPath = "/Account/AccessDenied";
});
services.AddAuthorization();
private readonly UserManager<IdentityUser> _userManager;
private readonly SignInManager<IdentityUser> _signInManager;
public YourPageModel(UserManager<IdentityUser> userManager, SignInManager<IdentityUser> signInManager)
{
_userManager = userManager;
_signInManager = signInManager;
}
var user = await _userManager.GetUserAsync(User);
其中,User是PageModel类的一个属性,表示当前请求的用户。
string username = user.UserName;
string email = user.Email;
这样就可以在ASP.NET Core 3.1中获取PageModel中的当前登录用户了。
对于ASP.NET Core 3.1的相关知识,可以参考腾讯云的产品文档:ASP.NET Core 3.1。
注意:以上答案仅供参考,具体实现可能会因项目配置和需求而有所不同。
云+社区沙龙online第5期[架构演进]
云+社区技术沙龙[第10期]
云+社区开发者大会 长沙站
算法大赛
腾讯云GAME-TECH沙龙
小程序·云开发官方直播课(数据库方向)
云+社区技术沙龙[第6期]
腾讯云GAME-TECH沙龙
云+社区技术沙龙[第8期]
Elastic 中国开发者大会
领取专属 10元无门槛券
手把手带您无忧上云