【发布时间】:2017-07-27 20:22:50
【问题描述】:
大家好,有一个非常简单的数据表,它是通过 excel 导入的:
cmdExcel.CommandText = "SELECT * From [" + SheetName + "A:B]";
oda.SelectCommand = cmdExcel;
oda.Fill(dt);
我不使用任何标题,所以列的名称是默认的 - F1 和 F2。问题是,我无法将第二列中的任何值分配给变量。但是第一个值可以正确分配。
string firstColumn = dt.Rows[1]["F1"] as string;
string secondColumn = dt.Rows[1]["F2"] as string;
我附上了一个屏幕,您可以在其中看到数据表中的内容。在 firstColumn 中存储了“ABC”,这很好,但 secondColumn 的值为空。这应该很容易,但是这里出了点问题,我不知道是什么。你能帮帮我吗?
【问题讨论】:
-
dt.Rows[1]["F2"]的确切值是多少?dt.Rows[1]["F2"].GetType().FullName返回什么? -
它可能是一个 int - 不要
as string -
它返回双倍,所以这就是问题所在。谢谢马克。我只是想,如果它是由 excel 导入并自动创建 dt,那么所有单元格将是相同的类型 - 字符串。