Asp.Net Boilerplate,, 如何获取当前登录用户?

MMG*_*MMG 4 c# ef-code-first asp.net-boilerplate aspnetboilerplate

我想获取当前登录的用户数据,?? 我必须将当前用户 ID 发送到数据库中的表如何执行此操作?

Abd*_*zad 9

您可以使用 AbpSession 来获取用户。为此,您必须注入 IAbpSession。您可以使用以下代码:

 AbpSession.UserId
Run Code Online (Sandbox Code Playgroud)


Mes*_*aba 5

这是问题的答案

User.Identity.GetUserId();
Run Code Online (Sandbox Code Playgroud)


Alp*_*glu 5

在自定义类中使用下面的代码来获取当前用户 ID

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

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

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

}
Run Code Online (Sandbox Code Playgroud)

在应用程序服务中,您不需要注入 AbpSession 只需使用 AbpSession 公共属性

AbpSession.TenantId

AbpSession.UserId