c# - 数据表单元格数学
问题描述
我对整个 C# 非常陌生,非常感谢您在这方面的智慧:我正在制作一个类似游戏的东西,需要为一群人存储并不断更新数据库。
目前我正在尝试创建一个DataTable dt;
添加列dt.Colums.Add("age", typeof(int));
添加行dt.Rows.Add(10);
现在我想动态调整包含 10 到 11 的年龄 int 值的单元格的内容。
我试着dt.Rows[0]["age"] += 1;
但是,我得到以下信息:
错误 CS0266 无法将类型“object”隐式转换为“int”。存在显式转换(您是否缺少演员表?)
我对为什么“单元格”返回一个对象而不是一个 int 感到很困惑。怎么可能直接对单元格的内容进行数学运算?
解决方案
这里 dt.Rows[0]["age"] 是一个对象而不是整数类型,因此运算符 '+=' 不能应用于 'object' 和 'int' 类型的操作数试试这个,
dt.Rows[0]["age"] = Convert.ToInt16(dt.Rows[0]["age"]) + 1;
推荐阅读
- google-maps - 你可以在反应原生地图中自定义当前位置标记吗?
- python - 对 Flask 蓝图的测试给出了属性错误
- jquery - formvalidator.net - 尝试比较两个输入字段
- css - 计算正确的排水沟
- ios - UIScrollView 上的 Next Prev 按钮
- .net - VSTO ClickOnce 部署配置值
- javascript - 如何迭代数组的元素并在 javascript 的中间显示一条消息?
- java - 为什么此方法每次都将第一个答案作为正确答案返回?
- jmx - 使用 AMQ 7.0.1 进行 AppDynamics 监控
- mongodb - 为什么我无法在 MongoDB 中指定使用投影参数返回的字段?