using Microsoft.AspNetCore.Http; using System; using System.Collections.Generic; using System.Linq; using System.Security.Claims; using System.Text; using System.Threading.Tasks; namespace Yi.Framework.Infrastructure.CurrentUsers.Accessor { public class HttpContextCurrentPrincipalAccessor : ThreadCurrentPrincipalAccessor { private readonly IHttpContextAccessor _httpContextAccessor; public HttpContextCurrentPrincipalAccessor(IHttpContextAccessor httpContextAccessor) { _httpContextAccessor = httpContextAccessor; } protected override ClaimsPrincipal GetClaimsPrincipal() { return _httpContextAccessor.HttpContext?.User ?? base.GetClaimsPrincipal(); } } }