Ваша проблема, вероятно, происходит здесь:
s = Convert.ToString(ComboBox1.Items(i))
Это не возвращает значение. Он возвращает строковое представление объекта по данному индексу, который, по вашему мнению, имеет тип System.Data.DataRowView
.
Вам необходимо будет указать ComboBox1.Items(i)
соответствующему типу и получить доступ к его Value
. Или, так как св DataRowView
, вы можете получить доступ к значениям throgh соответствующих имен столбцов:
Dim row = CType(ComboBox1.Items(i), System.Data.DataRowView)
s = row.Item("column_name")
Тем не менее, в первую очередь вы должны определенно закрыть и утилизировать соединение, независимо от того, терпит ли сделка или преуспевает. Это можно сделать в блоке finally
(вариант 1) или с оператором using
(вариант 2).
Вариант 1
// ...
con1 = New MySqlConnection(str)
con1.Open()
Try
// ...
Catch ex As Exception
Lblmsg.Text = " Error in data insertion process....." + ex.Message
Finally
con1.Close()
con1.Dispose()
End Try
Вариант 2
// ...
Using con1 as New MySqlConnection(str)
con1.Open()
Try
// ...
Catch ex As Exception
Lblmsg.Text = " Error in data insertion process....." + ex.Message
Finally
con1.Close()
End Try
End using
Пожалуйста, смотрите мой обновленный вопрос ... – Amulraj
@Amulraj Я обновил свой ответ соответственно –
Спасибо так много .. – Amulraj