首页 新闻 会员 周边 捐助

if (user?.Identity?.IsAuthenticated ?? false)这几个问号分别都代表啥意思?

0
悬赏园豆:5 [已解决问题] 解决于 2018-05-16 13:27
复制代码
            var user = HttpContext.User;
            if (user?.Identity?.IsAuthenticated ?? false)
            {

            }
            else
            {

            }
复制代码

如题,求解。

屌丝大叔的笔记的主页 屌丝大叔的笔记 | 初学一级 | 园豆:2
提问于:2018-05-16 10:26

牛逼的写法,谢谢dudu,xiexie演员。

屌丝大叔的笔记 6年前
< >
分享
最佳答案
1

? 如果不为null,执行其后的方法;?? 如果为null,返回其后的值。

收获园豆:5
dudu | 高人七级 |园豆:29570 | 2018-05-16 10:32
其他回答(1)
0

等价于

         bool isNull;
            if (user != null)
            {
                if (user.Identity != null)
                {
                    if (user.Identity.IsAuthenticated != null)
                    {
                        isNull = user.Identity.IsAuthenticated;
                    }
                }
            }
            isNull = false;
            if (isNull)
            {

            } 
写代码的相声演员 | 园豆:517 (小虾三级) | 2018-05-16 11:38
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册