簡體   English   中英

如何在不通過 controller asp.net 核心的情況下獲取任何 Class 中的當前用戶 ID 和用戶聲明

[英]How to get current user Id and user claim in any Class without pass by controller asp.net core

我正在為所有依賴於用戶聲明的用戶創建一個動態菜單。 我有三種類型的用戶聲明 Admin、Employee 和 Manager。 現在我需要在 class 中獲取用戶策略。那么我該如何獲取呢?

    private readonly UserManager<ApplicationUser> _userManager;
    private readonly IHttpContextAccessor _httpContext;
    public MainMenuModel(UserManager<ApplicationUser> userManager, IHttpContextAccessor httpContext)
    {
        _userManager = userManager; 
        _httpContext = httpContext;
    }

我嘗試使用此代碼捕獲聲明。

        var user = _userManager.FindByNameAsync(_httpContext.HttpContext.User.Identity.Name);
        var claims = _userManager.GetClaimsAsync(user.Result);

顯示消息“對象引用未設置到對象的實例”。 我可以訪問 class 中的用戶聲明嗎?

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM