1

我有一个简单的循环,我试图用它来从表单中捕获数据并将其放入更新表的存储过程中。在我看来,它应该做它应该做的事情,但我遇到了一个转换错误,我不确定为什么。我什至不知道它是否真的有效,因为我遇到了一个对我来说没有多大意义的错误。这是我目前拥有的:

    Dim rowcounter As Integer = 1

    While rowcounter < 15
        Dim NameHolder As String = "LineID" + rowcounter.ToString
        CMD.CommandTimeout = 60
        CMD.Connection = CONN
        CMD.CommandType = CommandType.StoredProcedure
        CMD.CommandText = "UpdateArchived"
        CMD.Parameters.Clear()
        CMD.Parameters.AddWithValue("@ID", Me.Controls(NameHolder).ToString)
        DA.SelectCommand = CMD
        DS.Clear()
        DA.Fill(DS)
    End While

错误在于 Me.Controls(NameHolder).ToString 行。它显示以下内容:从字符串“LineID1”到类型“Integer”的转换无效。

这里将什么转换为整数?Me.Control 是否将控件作为整数返回?

4

1 回答 1

1

尝试使用 & 不 +

两者都是 concat 运算符,但 + 会尝试将整数添加到整数,因此会出现错误。& 只处理字符串。

所以..

Dim NameHolder As String = "LineID" & rowcounter.ToString

高温高压

于 2013-09-27T21:14:53.843 回答