如何编写此 LINQ 查询以从 Identity oauth 获取特定声明

How to write this LINQ query to get a particular claim from Identity oauth

我的对象中有一个声明列表,我想查找具有名称的特定声明并找到其布尔值。我编写了以下查询,但收到错误消息,提示我无法在字符串和布尔操作数上使用“&&”运算符。

bool isSSO = context.Ticket.Identity.HasClaim(c => c.Type == "IsSSO"&& c.Value);

请指教

问题是 Claim.Value 属性 是 string,可能您收到的值是 "true""false"。试试这个:

bool isSSO = context.Ticket.Identity.HasClaim(c => c.Type == "IsSSO" && bool.Parse(c.Value));