无法访问 User.Identity 中的 Claims,但可以在断点视图中查看它们

Kon*_*ten 1 c# intellisense identity claims-based-identity

我知道字段ClaimsUser.Identity 中,因为我可以使用断点视图查看它及其内容,如图所示。但是,当我在开发过程中尝试使用智能感知访问它时,我不能。即时窗口也是如此 - 该属性似乎不存在。

那是怎么回事?

在此处输入图片说明

And*_*ykh 6

User.Identity 属性最有可能是IIdentity类型。另一方面,存储在其中的实例是ClaimsIdentity类型,如您在调试器中所见。

您需要一种类型转换为另一种类型才能访问该值:

ClaimsIdentity identity = User.Identity as ClaimsIdentity;
IEnumerable<Claim> claims = identity.Claims;
Run Code Online (Sandbox Code Playgroud)