0

私が構築しているWebアプリには、主に複数の選択肢の質問といくつかの短い回答があります。すべての回答は、ストアドプロシージャを介してデータベースに格納され、別のプロシージャを使用して抽出および修正されます。短い回答の質問はページに印刷されないクエリに含まれていますが、代わりにセッション変数に保存され、それぞれのテキストボックスに印刷されていますが、問題は、セッションの場合、レビュー担当者がそれらを表示できなくなることです。タイムアウトになりました。したがって、VB.netでクエリから特定の行を抽出し、そこからどのように処理するのか疑問に思っています。

これは私が現在持っているものです

    Dim P2Ans As String
    P2Ans = Session("Part2")
    Dim Part2Txt As New ArrayList(P2Ans.Split("|"c))
    Normal.Text = Part2Txt(0)
    Normal2.Text = Part2Txt(1)
    Normal3.Text = Part2Txt(2)

私が欲しいのはこのようなものです

    Dim P2Ans As String
    P2Ans = Select.Tables(Answers).Where("QuestionID =X") 'from there take the answer out of the column "Question Answer"

    Dim Part2Txt As New ArrayList(P2Ans.Split("|"c))
    Normal.Text = Part2Txt(0)
    Normal2.Text = Part2Txt(1)
    Normal3.Text = Part2Txt(2)

これが可能かどうか、またはベストプラクティスかどうかはわかりませんので、アドバイスをいただければ幸いです。

私の答え:このようなもの

        Dim queryString As String = "SELECT questionAnswer FROM Submissions where   submissionid =" + SID + "and questionNumber = 1"
        Using connection As New SqlConnection(My.Settings.ConnString)
            Dim command As New SqlCommand(queryString, connection)
            connection.Open()
            Dim reader As SqlDataReader = command.ExecuteReader()
4

1 に答える 1

1

SqlCommandオブジェクトを使用してクエリを渡し(つまり、SELECT answer FROM Answers WHERE questionid ='x')、SqlDataReaderを使用して回答を取得し、フォームの変数やコントロールに保存できます。

于 2013-02-05T15:31:08.967 に答える