我有这个功能:
public bool GetBoolSetting(Settings setting)
{
return int.Parse(GetStringSetting(setting)) == 0 ? false : true;
}
存在一个问题,即
GetStringSetting(setting)
可以返回 null
、 "0"
或 "1"
。当它返回 null
时,我得到一个异常。如果发生这种情况,我是否可以让
GetBoolSetting
函数返回 null? 最佳答案
您可以将方法的类型更改为 Nullable<bool>
并继续执行如下所示的一个线性语句:
public bool? GetBoolSetting(Settings setting)
{
return GetStringSetting(setting) != null ?
int.Parse(GetStringSetting(setting)) != 0 : new bool?();//Or default(bool?)
}
您还可以使用
default(bool?)
而不是 new bool?()
,它返回 Nullable bool 的默认值为 null。关于c# - 如何从函数返回 null 或 bool,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/44986924/