从字符串“Price”到“Integer”类型的转换无效

时间:2018-02-21 04:53:45

标签: asp.net vb.net

使用vb asp.net

error:数据库问题(2)。从字符串“Price”到“Integer”类型的转换无效。

Dim testP As Decimal = reader3.GetDecimal("Price")

列数在数据库中是十进制的

4 个答案:

答案 0 :(得分:3)

GetDecimal方法仅接受列序号,而不接受列名。正确的选择是获得该名称的序数:

Dim testP As Decimal = reader3.GetDecimal(reader3.GetOrdinal("Price"))

或者,您可以从Object属性获取Item引用并进行投射:

Dim testP As Decimal = CDec(reader3("Price"))

答案 1 :(得分:0)

这是有效的

Dim testP As Decimal = Decimal.Parse(reader3("Price").ToString())

答案 2 :(得分:0)

将int转换为十进制

DispatchQueue.performAction(after: 0.3) {
  // Code Here
}

答案 3 :(得分:0)

尝试使用您检索到的列的索引。说你的选择看起来像这样

Select Name, Department, Item, Price From MyTable;

然后Price将是指数3.(基于零)

Dim testP As Decimal = reader3.GetDecimal(3)