2013-02-05 19 views
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() 

回答

1

你可以使用一個SqlCommand對象,通過它查詢(即SELECT回答的答案WHERE questionid =「X」),然後使用SqlDataReader對象來獲取答案,將其保存到表單上的變量和/或控件中。

+0

我想到了這一點,但我想,因爲數據已經提供給我,我會嘗試和使用它,爲了結合起見 – user1902540

+0

爲什麼不只是延長會議時間,並繼續做你在做什麼呢? – markp3rry

+0

因爲人們可能在看這幾個星期/幾個月的道路 – user1902540