我有一个存储过程返回一个布尔变量:
这是我的C#代码,当我尝试返回一个int变量时可以工作。但是当我为bool尝试它时它不起作用。
DbCommand dbCommand = db.GetStoredProcCommand("spGetConfigureAlerts");
object o = db.ExecuteScalar(dbCommand);
bool item = o == null ? 0 : (bool)o;
return item;
我如上所示,但在第三行它说:
Type of conditional expression cannot be determined because there is no implicit conversion between 'int' and 'bool'
我该如何解决?
答案 0 :(得分:6)
如果要初始化0
变量,为什么要使用bool
?
bool item = (o == null || DBNull.Value == o) ? false : (bool)o;
答案 1 :(得分:1)
bool item = o == null ? false : (bool)o;
答案 2 :(得分:0)
试试这个:
bool item = o == null ? false : (bool)o;