处理整数时出现无效的 Cast 异常

Invalid Cast exception when dealing with Integers

我遇到的问题需要一些帮助。

我目前正在构建一个导出程序以从 Excel 文档中提取数据并将其推送到 FoxPro 数据库(我知道,老技术),但是我遇到了障碍。该代码尝试从包含一个月租金的列中提取数据。

 importCommand.Parameters["PRICEASK"].Value = exportReader.IsDBNull(14)
                    ? (object) DBNull.Value
                    : exportReader.GetInt32(14);

但是,我得到这个错误:

Additional information: Specified cast is not valid.

坦率地说,我很困惑为什么会收到此错误

自从我以类似的身份与 Excel 合作以来已经有一段时间了,但 运行 遇到了一个非常相似的问题。问题来自读取,你告诉它你得到一个 Int 但它不喜欢它,可能是因为 column/cell 没有格式化为整数。应该有一个选项可以将单元格值读取为字符串。类似于:

importCommand.Parameters["PRICEASK"].Value = exportReader.IsDBNull(14)
                ? (object) DBNull.Value
                : exportReader.GetString(14);

获取字符串并在获得该字符串后进行转换以将其存储在数据库中。试试看。祝你好运。