我在我的对象中拥有一个声明列表,我想查找其名称的特定声明并查找它的布尔值。我写了下面的查询,但是我收到错误,说我不能在字符串和布尔操作数上使用'& &'操作符。如何编写此LINQ查询以从身份获取特定声明oauth
bool isSSO = context.Ticket.Identity.HasClaim(c => c.Type == "IsSSO"&& c.Value);
请指教。
我在我的对象中拥有一个声明列表,我想查找其名称的特定声明并查找它的布尔值。我写了下面的查询,但是我收到错误,说我不能在字符串和布尔操作数上使用'& &'操作符。如何编写此LINQ查询以从身份获取特定声明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));
它对我很有帮助。谢谢 ! – Rash
@Rash:不客气。 –
你想c.Value比较什么? – dinotom
可以肯定'c.Type'是'string','c.Value'是'bool'? –
@Arturo:是的,c.Type是字符串,c.Value是bool,我想根据c.Value – Rash