首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >(ASP.NET)返回空值的SQL数据读取器

(ASP.NET)返回空值的SQL数据读取器
EN

Stack Overflow用户
提问于 2012-10-12 11:14:29
回答 1查看 548关注 0票数 1

我连接到一个数据库,然后使用SQLDataReader解析这些结果,然后将这些结果放入变量中,以便稍后使用。问题是我所有的"results.items“都返回空值。但是,当我进行调试时,DataReader会显示正确的字段计数。

代码语言:javascript
复制
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
EN

回答 1

Stack Overflow用户

发布于 2012-10-12 16:46:29

您从哪里获得ID值?"addCom.Parameters.AddWithValue("@ID",ID)“

删除"addCom.ExecuteNonQuery()“

为什么要使用

Dim字符串As results.Item("Content") = editText

我在循环之前定义了变量,然后以这种方式读取它

代码语言:javascript
复制
Dim editText As String 
  While results.Read() 
      editText = results("Content")   ' without .items
     ...
 End While 
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12851684

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档