0

SqlDataReaderを使用してデータベーステーブルから情報を取得しようとしています。2つの列があり、1つは文字列で、もう1つはビットです。文字列はテキストボックスに入力されます。しかし、私がラジオボタンリストにそれを記入したかったときのビットの問題は起こりません。それは私にこのエラーを与え続けますSpecified cast is not valid.これは私のvbサーバー側のコードです:

Dim dt As DataTable = New DataTable()
        Dim command As New SqlCommand(query2, conn)
        Dim param As New SqlParameter()
        param.ParameterName = "@cUserName"
        param.Value = Session("Edit")
        command.Parameters.Add(param)

        Dim dr As SqlDataReader = command.ExecuteReader()
        If dr.HasRows Then
            dr.Read()
            tbUsername.Text = dr.GetString(0)
            rblDept.SelectedIndex = dr.GetByte(1)
        End If

試しdr.GetByte(1)ましたが、うまくいきません。お願い助けて。

4

1 に答える 1

0

私は愚かなことをしました、そしてそれはうまくいきます。コードは次のとおりです。

If dr.HasRows Then
            dr.Read()
            tbUsername.Text = dr.GetString(0)
            Dim deptid As Integer = CInt(dr(1))
            If deptid = -1 Then
                rblDept.SelectedIndex = 1
            Else
                rblDept.SelectedIndex = 0
            End If
        End If

それは完璧に動作します。

皆さんありがとう。

于 2013-03-19T06:06:50.483 に答える