我有一个有趣的问题。 访问后,我的身份验证后的ClaimsIdentity变为null。 访问的方式似乎无关紧要,任何访问都将使声明无效。
通过调试查看声明,访问声明变量,查询声明等。这些似乎都使声明无效。
下面的示例屏幕截图。第一个显示我在调试器中公开声明,第二个显示我在将鼠标移开然后返回到ClaimsIdentity变量后没有公开断点的情况下公开声明。
当我第一次检查索赔标识时,它会显示8个索赔(以及所有正确填充的信息)。
当我将鼠标移出Claim变量并移回它之上时,魔术般地,Claims为空。
这是我尝试过的东西。
User.Identities.First()
分配给i
,无需更改。User.Identities.First()
的新副本并分配给i
直接,没有变化。null
。e
分配给ClaimType
,无需更改。无论我做什么,声明都将在访问后始终为空。这显然不是故意的行为。