Hi,
I'm getting the following error base on dropdownlist selectindexchanged: error converting data type nvarchar to bigint
Beleow is my dropdownlist code:
Protected Sub ddlTaxName_SelectedIndexChanged(sender As Object, e As EventArgs) Handles ddlTaxName.SelectedIndexChanged
Dim strConnString As String = ConfigurationManager.ConnectionStrings("BytConnectionString").ConnectionString()
Dim strQuery As String = "select TaxName, [Rate(%)] from Sale_Tax where" & " TaxID = @TaxID"
Dim con As New SqlConnection(strConnString)
Dim cmd As New SqlCommand()
cmd.Parameters.AddWithValue("@TaxID", ddlTaxName.SelectedItem.Value)
cmd.CommandType = CommandType.Text
cmd.CommandText = strQuery
cmd.Connection = con
Try
con.Open()
Dim sdr As SqlDataReader = cmd.ExecuteReader()
While sdr.Read()
txtTaxAmt.Text = Convert.ToDecimal(Math.Round(sdr(1).ToString() * txtSubTotal.Text.Trim()) / 100).ToString("N2", CultureInfo.CreateSpecificCulture("en-US"))
hdfTaxName.Value = sdr(1).ToString()
End While
Catch ex As Exception
Throw ex
Finally
con.Close()
con.Dispose()
End Try
End Sub
Below is the code that populate the dropdownlist:
Protected Sub PopulateTax()
Dim connStr As String = ConfigurationManager.ConnectionStrings("BytConnectionString").ConnectionString
Dim sqlda As SqlDataAdapter = New SqlDataAdapter
Dim com As SqlCommand = New SqlCommand
Dim dt As DataTable
Dim conn As SqlConnection = New SqlConnection(connStr)
dt = New DataTable
com.Connection = conn
com.CommandText = ("select TaxID, TaxName + ' ' + [Rate(%)] + '%' As Name from Sale_Tax ")
sqlda = New SqlDataAdapter(com)
sqlda.Fill(dt)
ddlTaxName.DataSource = dt
ddlTaxName.DataTextField = "Name"
ddlTaxName.DataValueField = "TaxID"
ddlTaxName.DataBind()
ddlTaxName.Items.Insert(0, "Select")
End Sub
Thanks in advance.