Я пытаюсь получить текущий UserId в Abp, но получаю нулевое значение.
Я попытался получить его из слоя DomainService
и слоя ApplicationService
, и я получил те же результаты Вот пример того, как я пытаюсь его получить.
Вот DomainService
way
publi c класс SolicitudDocumentoManager: DomainService, ISolicitudDocumentoManager {private IRepository _solicitudDocumentoRepository;
private IAbpSession _abpSession;
public SolicitudDocumentoManager(IRepository<SolicitudDocumento> solicitudDocumentoRepository,
IAbpSession abpSession)
{
LocalizationSourceName = PrestamosConsts.LocalizationSourceName;
_solicitudDocumentoRepository = solicitudDocumentoRepository;
_abpSession = abpSession;
}
public long ObtenerIdUsuarioActual()
{
//NullAbpSession.Instance.
return _abpSession.UserId ?? 0; // ***** Returns null *******
}
AplicationService
way
publi c class SolicitudDocumentoAppService: ApplicationService, ISolicitudDocumentoAppService {
private readonly IWebHostEnvironment _hostingEnvironment;
private readonly ISolicitudDocumentoManager _solicitudDocumentoManager;
private readonly IHttpContextAccessor _httpContextAccessor;
private readonly IRepository<SolicitudPrestamo> _solicitudPrestamoRepository;
private readonly IRepository<User, long> _userRepository;
private IAbpSession _abpSession;
protected HttpContext HttpContext => _httpContextAccessor.HttpContext;
long userId = 0;
public SolicitudDocumentoAppService(IWebHostEnvironment hostingEnvironment,
IAbpSession abpSession)
{
_hostingEnvironment = hostingEnvironment;
_abpSession = abpSession;
}
public MyMethod()
{
long usuarioId = _abpSession.UserId; // ****** Returns null too ******
}
Я делаю это неправильно?
Я надеюсь, что вы можете помочь мне.