c# - 对象不能从 DBNull 分配给其他类型
问题描述
我在我的数据库中得到最小数量。但是当我的数据库中没有数据时,我会收到此错误。
System.InvalidCastException:“该对象不能从 DBNull 分配给其他类型。”
代码:
SqlCommand cmd = new SqlCommand("SELECT MAX(GidenEvrakSira) FROM GidenEvrak", con);
SqlCommand smd = new SqlCommand("Select Min(GidenEvrakSira) FROM GidenEvrak Where UserID is null", con);
con.Open();
maxnum = Convert.ToInt32(cmd.ExecuteScalar());
minum = Convert.ToInt32(smd.ExecuteScalar());
con.Close();
解决方案
评论中的 jdweng 建议正在发挥作用:
var results = (cmd.ExecuteScalar() == DBNull.Value) ? null : cmd.ExecuteScalar();
推荐阅读
- javascript - Jquery通过多个参数过滤问题
- c# - 使用 table api 时 cosmos 不返回任何记录
- dart - Flutter - 检查数组元素是否为空
- angular - 具有相同名称的打字稿导入类导致覆盖
- python - 尝试使用 os 库获取文件大小时,文件路径不起作用 [WinError 2]
- gradle - 关于QueryDSL、Spring Data、Gradle的几个问题
- python-3.x - Python GET 请求错误 405:需要 cookie 标头
- reactjs - 如何修复错误“Prop `className`不匹配。服务器:“MuiFormLabel-root-75 ....”?
- swift - 如何让firebase子快照值恢复工作?
- r - 通过 ggplot2 从包含变量计数的数据框中制作密度图