【发布时间】:2013-03-20 21:10:12
【问题描述】:
通常“指定的强制转换无效”错误很容易解决。但是这个让我头疼。
我的C# 应用程序中集成了一个SQL compact 数据库。目前我正在获取当前的数据库结构并将其放入数据表中。我使用的 SQL 命令是:
select * from information_schema.columns
其中一列是NUMERIC_PRECISION,它是一个数值。
我尝试将此信息存储在一个整数变量中,但它告诉我指定的转换无效。代码是:
int precision;
if (row["NUMERIC_PRECISION"] != DBNull.Value)
precision = (int)row["NUMERIC_PRECISION"];
我的问题是为什么这个操作无效?单元格是一个数值,我正在尝试将其转换为整数 - 理论上这应该可行吗?
【问题讨论】:
-
当您使用调试器检查值时,
row["NUMERIC_PRECISION"]的类型是什么? -
它是一个字符串。但它总是为 null 或具有数值。
-
你在
row["NUMERIC_PRECISION"]得到了什么??
标签: c#