2012-10-12 50 views
1

我連接到數據庫,然後使用SQLDataReader解析這些結果,然後將這些結果放入我可以在後期使用的變量中。問題是我所有的「results.items」都返回空值。但是,DataReader會在調試時顯示正確的字段數。(ASP.NET)返回NULL值的SQL數據讀取器

Private Sub GridView1_RowCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.GridViewCommandEventArgs) Handles GridView1.RowCommand 

    If e.CommandName = "editPost" Then 
     'Remove DataGrid''''''''' 
     GridView1.Visible = False 
     ''''''''''''''''''''''''' 
     Dim index As Integer = Convert.ToInt32(e.CommandArgument) 
     Dim row As GridViewRow = GridView1.Rows(index) 
     Dim ID As String = GridView1.Rows(index).Cells(0).Text 
     ''''''''''''''''''''''''''''''''''''''''CREATE Controls for Placeholder 
     Dim editEditor As New CuteEditor.Editor 
     Dim hiddenID As New HiddenField 
     hiddenID.ID = "hiddenID" 
     hiddenID.Value = ID 
     editEditor.ID = "editEditor" 
     Dim subjectTXT As New TextBox 
     subjectTXT.ID = "editorSubject" 
     Dim br As New Literal 
     Dim submitChanges As New Button 
     Dim sbjLabel As New Label 
     submitChanges.ID = "submitChanges" 
     submitChanges.Text = " Submit Changes " 
     submitChanges.Height = 40 
     submitChanges.Width = 300 

     sbjLabel.Text = "Subject: " 

     ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 
     editEditor.AutoConfigure = CuteEditor.AutoConfigure.Simple 
     br.Text = "<br/><br/>" 
     plcEditor.Controls.Add(hiddenID) 
     plcEditor.Controls.Add(sbjLabel) 
     plcEditor.Controls.Add(subjectTXT) 
     subjectTXT.Width = "100" 
     subjectTXT.Height = "25" 
     subjectTXT.CssClass = "editInput" 
     plcEditor.Controls.Add(br) 
     plcEditor.Controls.Add(editEditor) 
     plcEditor.Controls.Add(br) 
     plcEditor.Controls.Add(br) 
     plcEditor.Controls.Add(submitChanges) 
     submitChanges.OnClientClick = UpdatePost() 
     ''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''''' 
     Dim connStr As String = ConfigurationManager.ConnectionStrings("oakfratnewsConnectionString").ConnectionString 
     Dim nCon As New SqlConnection(connStr) 
     Dim addCon As New SqlConnection(connStr) 
     Dim addCom As New SqlCommand("SELECT * FROM [News] WHERE ([ID] = @ID)", addCon) 
     addCom.Parameters.AddWithValue("@ID", ID) 
     addCon.Open() 
     addCom.ExecuteNonQuery() 
     Dim results As SqlDataReader 
     results = addCom.ExecuteReader 
     While results.Read() 
      Dim editText As String = results.Item("Content") 
      Dim Subject As String = results.Item("Subject") 
      editEditor.Text = editText 
      subjectTXT.Text = Subject 


     End While 



    End If 
End Sub 
+0

刪除'addCom.ExecuteNonQuery()' –

+0

相同的結果.... – user1698144

+0

你在數據庫的字段中有空數據? –

回答

0

你從哪裏得到ID值? 「addCom.Parameters.AddWithValue(」 @ ID 「ID)」

刪除 「addCom.ExecuteNonQuery()」

爲什麼使用

昏暗EDITTEXT作爲字符串=結果。 項目( 「內容」)

我在循環之前定義變量,然後以這種方式閱讀

Dim editText As String 
    While results.Read() 
     editText = results("Content") ' without .items 
    ... 
End While