2016-04-26 39 views
0

我在我的对象中拥有一个声明列表,我想查找其名称的特定声明并查找它的布尔值。我写了下面的查询,但是我收到错误,说我不能在字符串和布尔操作数上使用'& &'操作符。如何编写此LINQ查询以从身份获取特定声明oauth

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

请指教。

+0

你想c.Value比较什么? – dinotom

+0

可以肯定'c.Type'是'string','c.Value'是'bool'? –

+0

@Arturo:是的,c.Type是字符串,c.Value是bool,我想根据c.Value – Rash

回答

1

问题是Claim.Value财产是string,可能你收到的值如"true""false"。试试这个:

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

它对我很有帮助。谢谢 ! – Rash

+0

@Rash:不客气。 –