在asp.net样板中,我们可以使用IAbpSession.Use(userId, tenantId)
来覆盖当前会话。
当我升级到abp框架(abp.io(时,我不知道如何迁移它。
我只找到了CurrentTenant.Change(tenantId)
来覆盖当前租户,但我找不到任何方法来更改当前用户。
我发现https://docs.abp.io/en/abp/latest/CurrentUser#changing-当前原理
看来,abp框架中的CurrentUser
只使用主体而不是UserId。
如果您对pricipal没有理解,请参考基于声明的身份验证,主体是一个包含多个声明的身份。
因此,如果我们想模拟用户,我们应该替换整个主体。
有一个悬而未决的问题:https://github.com/abpframework/abp/issues/1082