繁体   English   中英

重新加载页面时无法反映数据集或数据适配器中的更改

[英]Unable to reflect changes in dataset or dataadapter on page reload

我的这段代码有什么问题?

该代码工作正常,但是当我在表中输入新记录并刷新页面时,更改将不会反映出来。

我感到困惑的问题是什么..

 Protected Sub Page_PreInit(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreInit
        Dim ds As New DataSet()
        Dim connStr As String = "Data Source=DOBRIYAL-PC;Initial Catalog=MenuDb;Integrated Security=True"
        Using conn As New SqlConnection(connStr)
            Dim sql As String = "Select MenuID, Text, Description, ParentID from Menu"
            Dim da As New SqlDataAdapter(sql, conn)
            da.Fill(ds)
            da.Dispose()
            da.AcceptChangesDuringFill = True
        End Using
        ds.DataSetName = "Menus"
        ds.Tables(0).TableName = "Menu"
        ds.GetChanges()
        Dim relation As New DataRelation("ParentChild", ds.Tables("Menu").Columns("MenuID"), ds.Tables("Menu").Columns("ParentID"), True)

        relation.Nested = True
        ds.Relations.Add(relation)
        XmlDataSource1.Data = ds.GetXml()

        If Request.Params("Sel") IsNot Nothing Then
            Page.Controls.Add(New System.Web.UI.LiteralControl("You selected " + Request.Params("Sel")))
        End If
        XmlDataSource1.DataBind()
        RadMenu1.DataBind()
    End Sub
I have refatored your source code now you should see your new records on page load

Private Sub BindData()
    Dim ds As New DataSet()
    Dim connStr As String = "Data Source=DOBRIYAL-PC;Initial Catalog=MenuDb;Integrated Security=True"
    Using conn As New SqlConnection(connStr)
        Dim sql As String = "Select MenuID, Text, Description, ParentID from Menu"
        Dim da As New SqlDataAdapter(sql, conn)
        da.Fill(ds)
        da.Dispose()
        da.AcceptChangesDuringFill = True
    End Using
    ds.DataSetName = "Menus"
    ds.Tables(0).TableName = "Menu"
    ds.GetChanges()
    Dim relation As New DataRelation("ParentChild", ds.Tables("Menu").Columns("MenuID"), ds.Tables("Menu").Columns("ParentID"), True)

    relation.Nested = True
    ds.Relations.Add(relation)
    XmlDataSource1.Data = ds.GetXml()

    If Request.Params("Sel") IsNot Nothing Then
        Page.Controls.Add(New System.Web.UI.LiteralControl("You selected " + Request.Params("Sel")))
    End If
    XmlDataSource1.DataBind()
    RadMenu1.DataBind()
End Sub


  Protected Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
 Me.BindData()
End Sub

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM