Когда я вызываю метод setText, он ничего не возвращает.ввод данных из базы данных в label.text
setText("Sprite", "lblSpriteQty.Text", "lblSpriteTP.Text", 15)
код я использую для метода SetText
Public Sub setText(ByVal productname As String, ByVal qty As String, ByVal tp As String, ByVal price As Integer)
Using cs As New SqlConnection("Data Source=KARL-PC;Initial Catalog=ShawarmaToldb;Integrated Security=True")
Using cmd As New SqlCommand("SELECT SUM(quantity) FROM [tblOrderDetails] WHERE productid = (SELECT productid FROM [tblProduct] WHERE productname = @productname)", cs)
cmd.Parameters.AddWithValue("@productname", productname)
cmd.CommandType = CommandType.Text
cs.Open()
cmd.ExecuteNonQuery()
Dim dr As SqlDataReader = cmd.ExecuteReader()
While dr.Read()
If IsDBNull(dr.GetValue(0)) Then
qty = "0" 'but if i put lblSpriteQty.Text instead of qty it's working
tp = "0" 'same as here
Else
qty = dr.GetValue(0).ToString
tp = dr.GetValue(0).ToString * price
End If
End While
End Using
End Using
End Sub
Строки являются неизменяемыми, вы изменяете локальную переменную вместо возвращения Qty и т.п вызывающему абоненту , Вместо этого либо задайте текст в этом методе, либо сделайте его 'Function', который возвращает' Integer' для количества. –
Метод setText не имеет типа возврата. – Rakesh
Вы непосредственно присваиваете текст ярлыку внутри цикла while, почему он работает – Rakesh