如何使用AbpSession?

How to use AbpSession?

我想在我的自定义存储库中使用 AbpSession,但我无法获取实例。我想在 Entity Framework Core + .NET Core 2.1 上扩展 DataFilter,我应该怎么做?

来自 Abp Session 上的文档:

public class MyClass : ITransientDependency
{
    public IAbpSession AbpSession { get; set; }

    public MyClass()
    {
        AbpSession = NullAbpSession.Instance;
    }

    public void MyMethod()
    {
        var currentUserId = AbpSession.UserId;
        //...
    }
}

我已经在评论中回答了你的问题。您必须声明一个 IAbpSession 类型的成员,并使用构造函数中的值对其进行初始化。然后,您可以相应地使用 UserIdTenantId..... 属性。

public class MyClass : ITransientDependency
{
    public IAbpSession AbpSession { get; set; }

    public MyClass()
    {
        AbpSession = NullAbpSession.Instance;
    }

    public void MyMethod()
    {
        var currentUserId = AbpSession.UserId;
        //...
    }
}

您可以参考文档here