c三元运算符多重if-else条件



我有以下c#三元运算符:

 CrossConnectionProg = rdCrossConnectionProg.SelectedValue == "1" 
                         ? true 
                         : rdCrossConnectionProg.SelectedValue == "0" 
                              ? false 
                              : (bool?)null;

请注意,CrossConnecytionProg是一个可为null的布尔值

我正在尝试检查单选按钮(rdCrossConnectionProg)的值。如果它是"1",那么我喜欢赋值为true。否则,如果它是"0",我喜欢将其赋值为false。如果两者都不是,我喜欢给它分配一个空值。

当我执行以下操作时,如果没有选择任何内容,它将变为false而不是null。

为什么不使用更简单的表达式?为什么不这样?-

CrossConnectionProg = rdCrossConnectionProg.SelectedValue == "1";

最新更新