0

こんにちは、別のページに渡して詳細を表示するために使用しているログイン コントロールのセッション変数を実行しようとしています。aspNetDB を使用しています。以下のユーザーの詳細を表示する別のデータベーステーブルに接続されているため、私のユーザー名は整数に設定されています。私のコードは次のとおりです。

    Protected Sub Login1_LoggingIn(sender As Object, e As System.Web.UI.WebControls.LoginCancelEventArgs) Handles Login1.LoggingIn

            Session("StaffNo") = Login1.UserName()

        End Sub

コードは、データ グリッドにロードされたときに詳細を表示するために他のページに送信されますが、セッションは実行されていないようです:

Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
        Try
            Dim Staff As String = CType(Session.Item("StaffNo"), String)
            Dim conn As SqlConnection
            Dim cmd As SqlCommand

            Dim cmdstring As String = "SELECT * FROM [User] WHERE studentnum = @StaffNo"
            conn = New SqlConnection("Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Database.mdf;Integrated Security=True;User Instance=True")
            cmd = New SqlCommand(cmdstring, conn)

            cmd.Parameters.Add("@StaffNo", SqlDbType.Char).Value = Staff
            conn.Open()

            Dim myReader As SqlDataReader

            myReader = cmd.ExecuteReader(CommandBehavior.CloseConnection)


            GridView1.DataSource = myReader
            GridView1.DataBind()

            conn.Close()
        Catch ex As Exception
            Response.Write("An error has occurred")
        End Try

    End Sub
4

1 に答える 1

0
Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
    Try  
Dim cmdstring As String = "SELECT * FROM [User] WHERE studentnum = '"& Session("StaffNo").ToString & "' "

End Sub
于 2014-03-14T18:34:07.857 に答える