gpt4 book ai didi

c# - asp.net core获取当前用户的方法

转载 作者:IT王子 更新时间:2023-10-29 03:37:19 27 4
gpt4 key购买 nike

我想获取当前用户,这样我就可以访问他们的电子邮件地址等字段。但我不能在 asp.net core 中这样做。这是我的代码:

HttpContext 在 Controller 的constructor 中几乎为空。在每个操作中都获得一个用户是不好的。我想获取一次用户的信息,并保存到ViewData;

public DashboardController()
{
var user = HttpContext.User.GetUserId();
}

最佳答案

User.FindFirst(ClaimTypes.NameIdentifier).Value

构造函数编辑

下面的代码有效:

public Controller(IHttpContextAccessor httpContextAccessor)
{
var userId = httpContextAccessor.HttpContext.User.FindFirst(ClaimTypes.NameIdentifier).Value
}

RTM 编辑

您应该注册IHttpContextAccessor:

    public void ConfigureServices(IServiceCollection services)
{
services.AddHttpContextAccessor();
}

关于c# - asp.net core获取当前用户的方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36641338/

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