在 C# 中使用三元运算符获取可空 bool 的值

Jac*_*IRR -1 c#

有没有单线可以做到这一点?

string to = someNullableBool ? "value1" : "value2";

目前得到“不能隐式转换 bool?到 bool”......??运算符在这里发挥作用吗?还是仅在分配给 bool 时才这样?

基本上,如果someNullableBool为 null 或 false,则应将其视为 false。

小智 6

我将使用以下内容确保您有一个值并且该值是真的。它更具可读性,但不是性能最高的解决方案。

string to = (someNullableBool.HasValue && someNullableBool.Value) ? "value1" : "value2";
Run Code Online (Sandbox Code Playgroud)