尝试从数据读取器读取值时出现错误

时间:2018-03-19 10:42:06

标签: c# ado.net sqldatareader

我试图从数据读取器读取基于列名的值,但我没有得到什么数据类型(int,double,decimal)我应该读取该值 因为该列将具有sum,average,count,min,max等集合操作......

当我尝试使用double数据类型的数据读取器值时,我收到以下错误:

double unitPrice = dr.GetDouble(0); // index of my column whose value i want to read from data reader
  

错误:指定的演员表无效

Sql Query:

select sum([UnitPrice]) AS unitPrice from [Sales].[SalesOrderDetail]

此外,我对此unitPrice variable进行了一些计算,因此我没有得到读取此值以及数据类型的最佳方法?

由于unitPrice variable上的计算,我没有把它作为字符串,否则我必须在我的计算中解析它在双重

1 个答案:

答案 0 :(得分:0)

我遇到了同样的问题,使用强力打字为我工作:

public Double unitPrice = Convert.ToDouble(dr["unitPrice"]);

或者如果您已经知道要阅读的列的索引:

public Double unitPrice = Convert.ToDouble(dr(0));
相关问题